一、等价类分析定义
等价类划分技术把测试对象的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据,做为测试用例输入数据的测试用例设计技术;等价类是指测试对象某个参数输入域的子集合。在该子集合中,各个输入数据对于识别测试对象中的缺陷是等价的。即测试等价类的某个代表值就可以认为覆盖了该等价类所有其它值的测试。
等价类的两个假设:
1.测试对象等价类中任意一个代表值没有发现缺陷,那么等价类内其他值也不能发现缺陷;
2.测试对象等价类中任意一个代表值可以发现缺陷,那等价类内其他值也都可以发现缺陷;
1.有效等价类
对于测试对象而言,有效等价类指的是合理的,有意义的数据构成的集合。
2.无效等价类
对于测试对象而言,无效等价类指的是不合理的,没有意义的数据构成的集合。
二、边界值分析定义
边界值分析是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法作为对等价类划分法技术的补充,这种情况下,其测试用例来自等价类的边界。
边界值分析步骤:
1.识别测试对象中的参数等价类;
2.识别每个等价类的边界值;
3.创建边界值相关的测试用例;
4.定义边界值分析技术的覆盖率。
三、案例分析
示例1:
Input1:姓名,文本输入框,2~4个字符串(汉字和英文)
类型 | 个数 | 描述 |
---|---|---|
有效等价类 | 1 | 1.由2~4个汉字或英文组成的字符串 |
有效边界值 | 2 | 1.由2个汉字或英文组成的字符串 2.由4个汉字或英文组成的字符串 |
无效等价类 | 3 | 1.长度<2的字符串; 2.长度>4的字符串; 3.2=<长度<=4,内容既不是汉字又不是英文的字符串; |
无效边界值 | 2 | 1.由2个既不是汉字又不是英文组成的字符串 2.由4个既不是汉字又不是英文组成的字符串 |
Input2:年龄,文本输入框,3个字符串(0~130整数)
类型 | 个数 | 描述 |
---|---|---|
有效等价类 | 1 | 1.大于0小于130的整数字符串 |
有效边界值 | 1 | 1.长度=3的0~3整数字符串 |
无效等价类 | 4 | 1.长度<=3的非数字字符串 2.长度<=3的浮点数字符串 3.长度<=3的大于等于130的整数字符串 4.长度>3的字符串 |
无效边界值 | 2 | 1.字符串为0; 2.字符串为130 |
Input3:性别,单选按钮,男或女
类型 | 个数 | 描述 |
---|---|---|
有效等价类 | 2 | 1.男2.女 |
有效边界值 | 0 | |
无效等价类 | 0 | |
无效边界值 | 0 |
用例设计
有效等价类条数:112
1.姓名:张三,
年龄:20,
性别:男;
2.姓名:王大麻子,
年龄:100,
性别:女;
无效等价类条数:3+4+0
1.姓名:a
年龄:50,
性别:男;
2.姓名:李五四十四
年龄:44,
性别:女;
3.姓名:111,
年龄:50,
性别:男;
4.姓名:赵无极,
年龄:aa,
性别:女;
5.姓名:dog,
年龄:9.5,
性别:男;
6.姓名:aaaa,
年龄:140,
性别:女;
7.姓名:理理理理,
年龄:1111,
性别:男;
示例2:一个文本框,允许输入5-100个2-5的数字字符
有效等价类 | 有效等价类边界值 | 无效等价类 | 无效等价类边界值 |
---|---|---|---|
1.[5,100]个[2-5]数字字符 | 1.5个[2-5]数字字符 2.100个[2-5]数字字符 | 1.<5个[2-5]数字字符 2.<5个<2数字字符 3.<5个>5数字字符 4.>100个[2-5]数字字符 5.>100个<2数字字符 6.>100个>5数字字符 | 1.4个[2-5]数字字符 2.4个1 3.4个6 4.101个[2-5]数字字符 5.101个1 6.101个6 |
总结:
有效的等价类:多个输入有效等价类的迪卡儿乘积
无效等价类:多个输入无效等价类的和(缺陷屏蔽)