黑盒测试——等价类测试

等价类测试

原因:不能对系统进行穷尽测试,所以应该使用有限的测试用例测试系统,并满足条件

  • 测试是完备的
  • 测试时没有冗余的

等价类

有效等价类

  • 输入域中一组有意义的数据的集合
  • 有效等价类被用于检测系统指定功能和性能是否正确实现

弱覆盖

定义:测试用例应覆盖所有的有效等价类

强覆盖

定义:测试用例覆盖所有的有效等价类的组合

举例说明

s=x*y
x的取值范围是:M1,M2,M3
y的取值范围是:N1,N2
(假设取值范围是连续的情况下)
弱覆盖的测试用例:(M1,N1),(M2,N2),(M3,N1),只需要将M1,M2,M3,N1,N2都覆盖到
强覆盖的测试用例:(M1,N1),(M1,N2),(M2,N1),(M2,N2),(M3,N1),(M3,N3),需要全部等价类的组合都有

无效等价类

  • 输入域中一组无意义的数据的集合
  • 无效等价类被用于检验系统的容错性

原则:单缺陷原则

即测试用例的失败是由单个无效等价类关联的缺陷导致的。每个测试用例应该唯一对应一个输入条件的无效等价类。
一个测试用例唯一对应一个无效等价类
一个无效等价类可以对应多个测试用例

划分

假设输入域是一个连续的取值范围

  • 有效的取值范围是有效等价类
  • 无效的取值范围是无效等价类

等价类测试流程

  1. 确定有几个输入条件

问题:可能会改变原始输入域
解决办法:尽量从用户角度分析需求,避免改变原始域输入

  1. 划分每个输入条件

有效域和无效域的处理机制不同
解决办法:在有效域用组合机制,在无效域用单缺陷原则

  1. 选择合适的覆盖标准

如何选择合适的覆盖标准
解决办法:一般采用强覆盖指标;进度紧张时选择弱覆盖指标

  1. 设计测试用例

可能仍存在漏洞和冗余
务必确保数据的等价性,避免漏洞;等价划分兼顾输入的关联性,避免冗余

猜你喜欢

转载自blog.csdn.net/weixin_44048668/article/details/114848509
今日推荐