- 博客(74)
- 收藏
- 关注
原创 【软件测试】测试用例设计方法
测试用例设计方法中的等价类划分、边界值分析和错误推测法是三种不同的策略,它们的目标和应用场景各有侧重。通过组合使用这些方法,可以兼顾效率、覆盖率和深度,确保测试的全面性。(如最小值、最大值、临界值),因为边界附近是错误高发区。(非法输入),每个等价类中选择一个代表性值进行测试。,推测系统可能存在的缺陷场景并设计测试用例。灵活,能发现其他方法遗漏的异常场景;针对性强,能高效发现边界相关缺陷。:依赖经验,无法系统化覆盖。避免穷举测试,提高效率。将输入数据划分为若干。
2025-04-01 15:04:41
262
原创 【软测】AI助力测试用例
AI在帮助编写测试用例时,通常会利用需求文档、原型图、概要设计、详细设计等多个文档,自动化地生成测试用例。这些文档提供了系统的功能需求、设计细节和用户界面,AI可以从中提取信息来构建全面的测试覆盖。AI通过参考需求文档、原型图、概要设计、详细设计等文档,能够自动生成全面、精准的测试用例。AI在生成测试用例时,可以依据详细设计文档中的具体技术细节来编写更为精确的测试用例。原型图通常用于展示系统的用户界面和交互流程。AI可以通过分析原型图,结合需求文档中的内容来生成UI(用户界面)相关的测试用例。
2025-03-27 15:15:05
832
原创 【前端】css布局中,主轴和副轴的区别
主轴(Main Axis):元素排列的主要方向,默认是水平(row),也可以设置为垂直(column副轴(Cross Axis):与主轴垂直的方向,如果主轴是水平的,副轴就是垂直的,反之亦然。通过控制主轴和副轴的方向和对齐方式,你可以精确地安排元素在容器中的位置。
2025-03-17 11:28:46
421
原创 【软件测试】测试计划模板
非功能测试:性能(并发、响应时间)、安全性(SQL注入、XSS漏洞)、兼容性(浏览器、设备)。可根据项目规模调整测试类型和资源投入(如敏捷项目可简化文档,聚焦核心测试项)。项目概述:简要说明被测系统的功能及业务场景(如电商平台、金融系统等)。功能测试:核心业务流程(如用户注册、支付流程)、模块接口、UI交互。测试必要性:说明测试对系统稳定性、用户体验及安全性的保障作用。功能测试:基于需求文档设计用例,覆盖正向、逆向场景。参考文档:需求规格说明书、设计文档、接口文档。Jira/Xray(用例管理、缺陷跟踪)
2025-03-11 17:24:37
669
原创 【软件测试】功能自动化测试用例通常包含哪些要素
功能自动化测试用例是用于验证软件功能是否按预期工作的脚本或代码。与接口自动化测试用例不同,功能自动化测试用例通常关注用户界面(UI)和用户交互。
2025-03-11 10:12:33
890
原创 【软件测试】接口自动化测试用例通常包含哪些要素
接口自动化测试用例通常包含以下要素:用例ID:用例名称:接口信息:请求参数:预期结果:前置条件:后置条件:依赖关系:测试数据:执行步骤:实际结果:结果验证:备注:优先级:自动化脚本:示例:这些要素确保了测试用例的完整性和可执行性。以下是一个使用Python和库编写的简单接口自动化测试脚本示例,用于测试用户登录接口。假设接口的URL为,请求方法为POST,请求体为JSON格式。脚本说明:导入库:定义接口URL:定义请求头:定义请求体:发送POST请求:打印响应信息:验证状态码:验证响应数据:验证响应
2025-03-10 17:44:01
779
原创 AI图像识别课程设计
通过真实场景的问题驱动,培养具备技术能力、生态意识和伦理判断的复合型AI人才。建议配套开发虚实结合的实验平台,并建立与自然保护区、科研机构的长期合作机制。《AI驱动下的自然之眼:智能动物图像识别与应用》
2025-03-05 15:09:09
392
原创 top查看监控
CPU 负载:系统的负载较高,特别是 15 分钟的平均负载为 27.31,可能表明 CPU 正在面临较大的压力,尤其是如果你有多个 CPU 核心时。内存使用:大部分内存已被使用,但系统仍然有空闲内存(约 711 MB),并且缓存的内存可以在需要时释放。没有交换空间:由于没有配置交换空间,系统可能在内存不足时会遇到问题,尤其是在高负载的情况下。如果系统负载持续过高或出现性能瓶颈,可能需要检查哪些进程正在消耗大量资源。
2025-03-04 14:52:45
295
原创 如何在linux系统,通过top命令,查看监控
CPU 负载:系统的负载较高,特别是 15 分钟的平均负载为 27.31,可能表明 CPU 正在面临较大的压力,尤其是如果你有多个 CPU 核心时。内存使用:大部分内存已被使用,但系统仍然有空闲内存(约 711 MB),并且缓存的内存可以在需要时释放。没有交换空间:由于没有配置交换空间,系统可能在内存不足时会遇到问题,尤其是在高负载的情况下。如果系统负载持续过高或出现性能瓶颈,可能需要检查哪些进程正在消耗大量资源。
2025-03-04 14:47:51
473
原创 【数据库】ER图设计原则浅谈
关系的方向性要反映实际业务流程或行为”这一原则强调,在ER图设计时,关系的箭头方向应该与实际业务中的数据流动或操作流程保持一致。更清晰地表达业务逻辑;确保外键约束和数据操作符合业务需求;避免歧义和错误的理解。总之,ER图中的关系方向不仅仅是一个技术细节,更是业务流程的直接映射,因此在设计时需要特别关注。
2025-02-28 16:37:34
607
原创 An error occurred during credentials validation, Max retries exceeded with url: /api/chat
使用deepseek + dify 搭建本地知识库时,报错如下:An error occurred during credentials validation: HTTPConnectionPool(host=‘192.168.1.23’, port=11434): Max retries exceeded with url: /api/chat (Caused by NewConnectionError(‘<urllib3.connection.HTTPConnection object at 0x7f
2025-02-28 16:03:49
1285
原创 【PPT】PPT中通过方框、边界、文字、 颜色等组合来表达设计自己的思路
通过方框边界文字和颜色区分等设计手段,你可以使PPT的视觉效果更加清晰有序,从而更好地表达你的设计思路。这种组合的目的不仅是为了美化页面,更是为了使信息传达更加高效、直观,帮助观众理解你想表达的内容。
2025-02-11 16:43:07
596
原创 Word中如何格式化与网页和 HTML 内容相关的元素
这些 HTML 样式主要用于在技术文档、开发教程或 Web 开发相关的文章中格式化特定的 HTML 内容元素,增强文档的可读性和清晰度。它们有助于区分不同的内容部分,使读者能够快速识别和理解 HTML 代码、定义、地址、引用等特殊内容。
2025-01-15 11:54:15
865
原创 【数据库设计】电商系统中,SPU和SKU是如何设计的
SPU是一个商品的抽象单位,用来表示商品类别及其通用属性。SKU是商品的具体变种,代表了一个独立可销售的单元,用来进行库存管理、销售和价格控制。在电商系统中,设计时SPU与SKU是两层不同的抽象,SPU用来组织和分类商品,SKU则具体化为每个商品的实际销售单元,负责库存和销售数据的管理。
2025-01-13 14:46:21
657
原创 Agile Scrum 敏捷开发方法
Scrum 是一种结构化且灵活的敏捷开发框架,提供了清晰的角色定义、固定的活动和管理工件,使团队能够高效协作、快速交付产品。通过短期的迭代、持续的反馈和改进,Scrum 旨在帮助团队在快速变化的市场中取得成功。在 Sprint 结束后,团队进行自我评估,回顾整个 Sprint 中的流程、合作及问题,提出改进措施,为下一个 Sprint 做准备。每天举行的短会(通常为 15 分钟),开发团队成员在会上讨论当前的工作进展、遇到的问题以及接下来的计划。Scrum 方法的核心在于团队的角色和协作。
2025-01-11 11:19:54
987
1
原创 js逆向中,扣代码和补环境的区别
扣代码:适用于需要深入理解和分析特定代码逻辑的情况,适合解决具体的加密/混淆问题,执行效率高,但人工成本和时间投入较大。补环境:适用于需要绕过环境限制的情况,灵活性强,适用范围广,调试和实现效率较高,但执行效率可能较低。这两者其实是互补的,很多高级的逆向工作通常需要结合两者的优势,灵活应对不同的加密和保护策略。
2025-01-06 10:02:11
1422
原创 什么是 AST 反混淆?
AST(抽象语法树,Abstract Syntax Tree)是源代码的结构化表示,它将源代码的语法结构以树形的方式组织起来,使得每个节点代表程序中的一个语法元素。在 JavaScript 逆向工程中,
2025-01-03 17:35:13
1239
原创 prototype 和 [[Prototype]]之间的区别
prototype主要是指构造函数的一个属性,允许给所有由该构造函数创建的实例共享方法。是一个对象内部的隐式属性,表示对象实例的原型(即继承来源)。
2025-01-02 10:31:05
587
原创 在 JavaScript 中, 内存泄露问题
在 JavaScript 中,“内存爆破”(Memory Leak)通常指的是程序中由于某些资源没有被及时释放,导致内存的持续增长,最终可能引发程序崩溃或性能问题。内存泄漏可能发生在开发过程中,尤其是在涉及大量 DOM 操作、事件监听、异步操作和闭包等场景下。
2024-12-31 09:52:34
790
原创 js混淆中 p[‘name‘] 来访问属性的好处
使用p['name']更强的混淆效果:混淆工具能够随机替换属性名,使代码更难理解。防止静态分析:避免直接暴露真实的属性名。支持动态属性名:方括号语法可以通过变量动态计算属性名,增加混淆灵活性。兼容性:方括号语法支持包含特殊字符的属性名,确保代码的通用性。因此,p['name']在 JavaScript 混淆过程中具有更强的保护作用,能够有效增加反编译的难度。
2024-12-30 16:18:09
544
原创 ƒ () { [native code] } 的解释
表示一个原生函数,是由 JavaScript 引擎(例如 V8 引擎)用底层语言(如 C++)实现的,而不是使用 JavaScript 编写的。在浏览器控制台中,看到这种输出时,它意味着该函数是内置的、不可直接查看其源代码的。是 JavaScript 中的原生Object构造函数,通常用于创建对象。是 JavaScript 中的原生Function构造函数,通常用于动态创建函数。
2024-12-29 12:25:56
1148
原创 Function.prototype和Object.prototype之间的联系
是所有对象的原型,提供了与对象相关的通用方法。是所有函数的原型,提供了与函数执行相关的专用方法,同时继承自,因此函数也能访问对象的一些通用方法。的输出结果是true,因为Object构造函数本身是通过Function构造的,其原型链指向。
2024-12-27 14:38:08
1279
原创 JavaScript匿名函数和普通函数的区别
");greet();// 调用匿名函数");greet();// 调用具名函数特点匿名函数普通函数 (具名函数)定义没有名称,通常作为值传递或临时使用具有明确的名称,可以多次调用调用需要通过变量或传递给其他函数调用直接使用函数名调用常见用途回调函数、事件处理、短期任务常用于程序模块化、重复调用功能调试调试时不容易通过名称定位函数调试时容易通过函数名定位问题递归需要通过外部变量名进行递归可以直接通过函数名进行递归调用。
2024-12-26 10:17:45
787
原创 Function.prototype和Object.prototype 的区别
是所有对象的原型,提供了与对象相关的通用方法。是所有函数的原型,提供了与函数执行相关的专用方法,同时继承自,因此函数也能访问对象的一些通用方法。这两者各自有不同的角色和功能,分别用于对象和函数类型的原型链。
2024-12-25 10:35:29
904
原创 window 和 document 的原型链之间的区别
window和document都可以使用,因为它们都继承自。为true,因为window继承自。,因为它们指向不同的对象。,因为两者的append方法是同一个方法,都是继承自Node接口。
2024-12-25 10:02:36
527
原创 如何理解 JavaScript 中的原型链和构造函数的行为
这些概念一起构成了 JavaScript 中的原型链、对象继承和构造函数机制。在理解这些内容时,重点是通过__proto__和prototype属性来理解对象之间的继承关系,以及 JavaScript 中函数和对象的内部结构。
2024-12-25 08:30:00
877
原创 原型链(Prototype Chain)入门
在 JavaScript 中,原型链是用于实现对象继承的机制。每个对象都有一个内部属性,它指向该对象的原型(在大多数现代 JavaScript 引擎中,通常通过__proto__来访问)。原型链是由多个对象通过它们的原型链接在一起的链式结构,最终链的尽头指向null。prototype是构造函数的属性每个构造函数(如Person)都会有一个prototype属性,这个属性指向构造函数的原型对象。该原型对象上可以定义方法和属性,所有通过该构造函数创建的实例会继承这些方法和属性。例如,就是Person。
2024-12-24 17:34:45
908
原创 Jupyter Notebook的安装与使用
Jupyter Notebook 是一个开源的交互式笔记本环境,可用于进行数据分析、可视化、机器学习建模等工作。它支持多种编程语言,包括 Python、R 和 Julia 等,因此非常适合数据科学家和研究人员。使用 Jupyter Notebook,你可以在一个网页界面中编写和运行代码,并实时查看代码执行结果、绘图和文本输出。这种交互式的工作方式使得探索性数据分析、实验性编程和数据可视化变得更加直观和高效。
2024-12-17 16:50:33
1583
原创 【数据库设计】ER图,关系属性 是属于哪个实体的
关系属性是与关系相关的属性,属于关系本身,而不是属于单独的实体。它描述的是实体之间的相互联系的特征。
2024-11-29 10:27:05
774
原创 【前端Vue】day04
style的默认样式是作用到哪里的?scoped的作用是什么?style中推不推荐加scoped?data写成函数的目的是什么?组件通信,就是指组件与组件之间的数据传递组件的数据是独立的,无法直接访问其他组件的数据。想使用其他组件的数据,就需要组件通信组件关系分类有哪两种父子组件通信的流程是什么?父向子子向父组件上 注册的一些 自定义属性1.非父子组件传值借助什么?2.什么是事件总线3.发送方应该调用事件总线的哪个方法4.接收方应该调用事件总线的哪个方法。
2024-11-28 14:10:43
1811
原创 【数据库设计】如何根据UI界面设计数据库结构
根据UI设计来设计数据库结构的过程,实际上是从前端界面到后端数据存储的一种映射关系。通过分析UI界面中涉及的数据和交互逻辑,识别出数据实体及其字段,设计表的结构、表之间的关系,并考虑到数据约束、完整性和查询性能,最终完成数据库设计。这个过程不仅需要对数据库设计有清晰的理解,还需要对系统的业务逻辑有深入的了解。
2024-11-27 16:50:43
1781
原创 【前端Vue】day03
一、今日目标1.生命周期生命周期介绍生命周期的四个阶段生命周期钩子声明周期案例2.综合案例-小黑记账清单列表渲染添加/删除饼图渲染3.工程化开发入门工程化开发和脚手架项目运行流程组件化组件注册4.综合案例-小兔仙首页拆分模块-局部注册结构样式完善拆分组件 – 全局注册二、Vue生命周期思考:什么时候可以发送初始化渲染请求?(越早越好)什么时候可以开始操作dom?(至少dom得渲染出来)Vue生命周期:就是一个Vue实例从创建 到 销毁 的整个过程。
2024-11-26 15:04:21
1231
原创 【前端Vue】day02
一、今日学习目标1.指令补充指令修饰符v-bind对样式增强的操作v-model应用于其他表单元素2.computed计算属性基础语法计算属性vs方法计算属性的完整写法成绩案例3.watch侦听器基础写法完整写法4.综合案例 (演示)渲染 / 删除 / 修改数量 / 全选 / 反选 / 统计总价 / 持久化二、指令修饰符1.什么是指令修饰符? 所谓指令修饰符就是通过“.”指明一些指令后缀 不同的后缀封装了不同的处理操作 —> 简化代码2
2024-11-25 10:55:08
1007
原创 【数据库设计】软件系统需要同时设计注册日志表和登录日志表吗
设计注册日志表和登录日志表是有必要的。注册日志有助于了解用户的注册行为,监控注册渠道的效果,排查注册失败原因。登录日志帮助监控用户的活跃情况,检测异常登录行为,增强系统的安全性。通过分开设计这两个表,可以使数据更加规范,便于后续的查询和分析。
2024-11-22 08:05:31
470
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人