测试用例:测什么、怎么测 指导测试工作进行的依据
软件测试用例设计之等价类划分法
一、定义
用户所有可能输入的数据划分为若干份(也称为子集),然后从每个子集中选取少数具有代表性的数据作为测试用例。这些数据在测试中的作用等价于其所属部分的其他值
是一种重要的、常用的黑盒测试方法,考虑的是程序输入的规格
二、相关术语
等价类:输入域的各个子集,该子集中所有的数据在测试中的作用都是等效的
等价类分为:
- 有效等价类:符合《需求规格说明书》,输入合理的数据集合
- 无效等价类:不符合《需求规格说明书》,输入不合理的数据集合
三、等价类思考步骤
- 先确定有效和无效等价类
- 有效等价类就是题目条件
- 无效等价类先划分与条件相反的情况,再找到特殊情况(中文、英文、特殊符号、空格、空等)
四、等价类划分原则
1、确定了输入条件取值范围或值的个数,可以划分出1个有效等价类和2个无效等价类
2、输入条件规定了输入值的集合,例如条件中规定了“必须如何”的绝对条件,可以确定1个有效等价类和1个对立无效等价类
3、输入条件的数据类型为布尔类型,可以确定1个有效等价类和1个无效等价类,有效等价类为true,无效等价类为false
4、规定了输入数据的一组值,假定n个,程序要对这n组值分别处理,可以划分出n个有效等价类和1个无效等价类
5、在规定了输入数据必须遵守规则的情况下,可划分出1个遵守规则的有效等价类和若干个从不同角度违反规则的无效等价类
6、若已划分出的等价类中各元素在程序中的处理方式不同,则应再将该等价类进一步划分为更小的等价类
五、实例演示
1、测试QQ账号,账号要求是6-10位正整数
有效等价类:
1:长度在6-10位之间的正整数
无效等价类:
1:长度小于6位
2:长度大于10位
3:负数
4:小数
5:中文
6:英文
7:空格
8:特殊字符
2、某城市电话号码由三部分组成,分别是
地区码:空白或是3位数字
前缀:非‘0’且非‘1’开头的三位数字
后缀:4位数字
例如:1232341234