有效等价类划分测试
有效等价类划分(Valid Equivalence Class Partitioning)是软件测试中黑盒测试的一种常用方法。
它的核心思想是:
把输入数据划分成若干类,认为同一类中的数据对程序行为是等价的,只需选一个代表值进行测试。
其中:
有效等价类指的是
符合系统输入要求、程序应该正常处理的数据集合。
一、为什么要用等价类划分
如果输入范围很大,例如:
年龄:1 ~ 120不可能测试:
1、2、3……120于是可以把它划分成:
- 合法输入
- 非法输入
从每一类中选少量代表值测试。
这样可以:
- 减少测试用例
- 提高测试效率
- 保证覆盖性
二、有效等价类的定义
有效等价类是:
程序预期接受并正确处理的输入集合
例如输入要求:
用户名长度:6~12位那么:
有效等价类:
长度在 6~12 位之间例如:
abcdef三、示例说明
例题
某系统规定:
成绩输入范围:0~100划分等价类
有效等价类
0 ≤ 成绩 ≤ 100代表值可选:
50无效等价类
成绩 < 0 成绩 > 100 非数字 空值四、测试用例设计
| 测试类型 | 输入值 | 预期结果 |
|---|---|---|
| 有效等价类 | 50 | 正常接受 |
| 无效等价类 | -1 | 报错 |
| 无效等价类 | 101 | 报错 |
| 无效等价类 | abc | 报错 |
五、有效等价类测试步骤
1. 找输入条件
确定:
- 数值范围
- 字符长度
- 类型限制
- 格式要求
2. 划分类别
把输入分成:
有效类 无效类3. 选代表值
每个类中选一个典型值。
例如:
有效类选中间值4. 设计测试用例
形成测试表。
六、有效等价类特点
有效等价类关注的是:
系统应该接受的数据
测试目的:
验证系统正常处理能力七、与无效等价类区别
| 类型 | 含义 |
|---|---|
| 有效等价类 | 正常输入 |
| 无效等价类 | 错误输入 |
通常测试时:
有效 + 无效 一起设计效果最好。
八、通俗理解
可以理解为:
输入范围:
18~60岁那么:
有效类:
25、30、45本质都一样。
所以:
只测一个即可代表这一类。
九、一句话总结
有效等价类划分测试就是:
从合法输入集合中选取代表值,验证系统是否能够正确处理。