1 白盒测试覆盖标准
1.1 逻辑覆盖说明
分类 | 说明 |
---|
语句覆盖 | 每条语句至少执行一次 |
判定覆盖 | 每个判定的每个分支至少执行一次 |
条件覆盖 | 每个判定的每个条件应取到各种可能的值 |
判定/条件覆盖 | 同时满足判定覆盖条件覆盖 |
条件组合覆盖 | 每个判定中各条件的每一种组合至少出现一次 |
路径覆盖 | 使程序中每一条可能的路径至少执行一次 |
2 测试原则
- 一个模块中的所有独立路径至少被测试一次;
- 所有逻辑值均需测试true和false两种情况;
- 检査程序的内部数据结构,保证其结构的有效性;
- 在取值的上、下边界及可操作范围内运行所有循环;
3 分析方法
分析法 | 说明 |
---|
静态分析法 | 不执行程序,主要检查软件的表示和描述是否一致 |
动态分析法 | 真实环境中执行,使特定的预期结果执行 |
4 测试流程
“三步法”:
- 第一步:根据代码,设计测试用例;
- 第二步:统计白盒覆盖率,针对未覆盖的白盒进行用例设计;
- 第三步:自动动态测试,自动生成用例,弥补第二步的不足。
5 工具选择
侧重点 | 说明 |
---|
不同的开发语言 | 语言不同,工具有可能侧重不一样,比如有的工具偏向C,有的则偏向C++等,这样要针对性的选择 |
代码覆盖能力 | 不同的工具,对代码的覆盖能力有不同,比如逻辑覆盖的6种覆盖,工具的之间存在加大的差异 |
嵌入式方面 | 除了以上说的两种考虑外,针对嵌入式需要考虑工具对操作系统的支持 |
用户体验或者说视觉 | 白盒测试的酷造性,建议使用可视化的工具来提升测试质量 |
6 黑盒与白盒的区别
区别项 | 黑盒 | 白盒 |
---|
测试方式 | 功能测试 | 结构测试 |
测试目的 | 检查程序功能是否按照需求规格说明书的规定正常使用 | 在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致 |
测试原则 | 以用户的角度,从输入数据与输出数据的对应关系出发进行测试的 | 一个模块中的所有独立路径至少被测试一次 |
『全栈测试技术,分享,共勉,共进,提升』
【特别说明】:知识来源于网络、各种资料、书本、网站等,本文仅用于学习使用,不做他用,如果涉及版权问题,请联系博主删除,谢谢
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧