这一周的测试课程中,我们学习了黑盒测试的一种方法:等价类划分
一 等价类的基本概念
1.所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域。目的在于测试用例的无冗余性。
2.划分等价类( valid / invalid )的两种情况
(1)有效等价类:检验程序是否实现了规格说明预先规定的功能和性能。
(2)无效等价类:检查软件功能和性能的实现是否有不符合规格说明要求的地方。
3.常用的等价类划分原则
(1)按区间划分
(2)按数值划分
(3)按数值集合划分
(4)按限制条件或规则划分
(5)细分等价类
4.等价类划分的几种方法
(1)按区间划分:可以确定一个有效等价类、两个无效等价类。
(2)按数值划分
如果输入条件规定了输入数据的一组可能的值,而且程序是用不同的方式处理每一种值,则可为每一种值划分一个有效等价类,并划分一个无效等价类。
(3)按数值集合划分
规格说明中规定了输入值的集合,则可以确定一个有效等价类,并划分一个无效等价类。
(4)按限制条件或规则划分
规格说明中规定了输入数据必须遵守的规则和限制条件,则可以确立一个有效等价类(符合规则)和若干个(≥ 1)无效等价类(不同角度的违反规则)。
(5)细分等价类
如果我们确知,已划分的某等价类中的各元素(例子)在程序中的处理方式是不同的,则应据此将此等价类进一步划分成更小的等价类。
二 测试用例
题目:允许1到6个英文字符或数字,按OK结束
有效等价类: 长度:1到6 字符:a-z,A-Z,0-9
无效等价类: 长度:0,7 字符:英文/数字以外字符,控制字符,标点符号
Step1.等价类划分
有效等价类 | 无效等价类 |
长度:1到6 | 长度:0,7 |
字符:a-z,A-Z,0-9 | 字符:英文/数字以外字符,控制字符,标点符号 |
Step2.测试用例
编号 | 输入字符 | 期望输出 |
1 | a | 有效输入 |
2 | z | 有效输入 |
3 | z02345 | 有效输入 |
4 | zA | 有效输入 |
5 | zzzzzzz | 无效输入 |
6 | ,, | 无效输入 |
7 | 空格 | 无效数入 |
8 | * | 无效输入 |
9 | ZZZ000 | 有效输入 |
10 | T0y | 有效输入 |
11 | !!! | 无效输入 |
12 | !!!!!!! | 无效输入 |
13 | uyueiuwy | 无效输入 |
14 | 008899 | 有效输入 |