软件测试手段七大分类
第一种,黑盒测试
1,定义
2,黑盒测试的优缺点
优点:
- 容易实施,不需要关注程序内部的实现
- 更贴近用户的使用角度
缺点:
- 测试覆盖率较低,一般只能覆盖到代码量的40%
- 针对黑盒的自动化测试,复用率较低,维护成本较高。
3,黑盒测试主要测试的内容
- 是否有不正确或遗漏的功能
- 在接口上,输入是否能正确的接受?能否输出正确的结果
- 是否有数据结构错误或外部信息访问错误?
- 性能上是否能够满足要求?
4,黑盒测试的主要设计方法?
第二种,白盒测试
1,定义
2,主要逻辑单位
- 语句
- 条件
- 条件组合
- 分支
- 路径
3,白盒测试的优缺点
优点:
- 迫使测试人员去仔细思考软件的实现,理解原理
- 可以检测代码中的每条分支和路径
- 揭示隐藏在代码中问题
- 对代码的测试比较彻底
缺点:
- 代价有些高,需要测试人员有编程能力
- 无法检测代码中遗漏的路径和数据敏感性错误
- 不能直接验证需求的正确性
第三种,灰盒测试
定义:介于黑、白盒测试之间的,关注输出对于输入的正确性,同时也关注内部表现
第四种,静态测试
1,定义:
静态测试是指无需执行被测程序,而是通过评审软件文档或代码,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率
2,用图来说明
第五种,动态测试
1,定义
动态测试是指通过运行被测程序,检查运行结果和预期结果的差异,并分析运行效率,正确性和健壮性等
2,静态(看外观)和动态(发动车走一段路)可以用买车来说明
第六种,手工测试
定义:
由专门的测试人员从用户视角来验证软件是否满足设计要求的行为。
更适用针对深度的测试和强调主观判断的测试
比如:众包测试和探索式测试
第七种,自动化测试
1,定义:
适用单独的测试工具软件控制测试的自动化执行以及对预期和结果进行自动检查。