2.1.4 测试用例的设计
如果系统中有多处需要使用等价类设计的测试用例,对于有效等价数据类,可以在一个测试用例中使用;而对于无效等价类数据,在一个测试用例中只能出现一个。
案例2-4:等价类测试。
图2-1是用户信息输入的部分界面,针对这个界面设计测试用例。
图2-1 用户信息输入的部分界面
这里性别也需要输入,只允许输入"男"和"女"。
对于有效等价数据类,设计测试用例如下。
(1)姓名:小明,年龄:0岁,性别:男。
(2)姓名:阿拉克拉姆,年龄:130岁,性别:女。
而对于无效等价类,如果设计的测试用例如下。
姓名:明,年龄:200岁,性别:男。
那么系统如果只报告了姓名有误,而没有报告年龄有误的信息,就无法知道年龄是否在程序中进行了有效性检验。也就是说,出现"缺陷屏蔽",所以,对于无效等价类,测试用例应该细化如下。
(1)姓名:克,年龄:13,性别:男。
(2)姓名:阿拉克拉姆萨,年龄:13,性别:男。
(3)姓名:@ @,年龄:13,性别:男。
(4)姓名:小明,年龄:134,性别:男。
(5)姓名:小明,年龄:13,性别:中。
这样就可以看出:有效等价类的总个数为每个用例有效等价类个数的笛卡儿积(1×1×2=2);而无效等价类的总个数为每个用例有效等价类个数的和(1+1+3=5)。
另外,如果只要求测试等价类,而对边界值测试要求不高,在测试用例的设计中尽可能多地用到边界值。
案例2-5:由于边界值测试不完善带来的Bug。
这是我亲自遇到的一个案例。有一天我去上海某医院看病,由于手头现金没有带够,需要在医院的门口一台ATM机上取款,取款机上有一个提示,"一次取款不得多于¥2000,每天最多取5次",于是我用我的借记卡准备取¥2000,系统却告诉我"已经超过一次取款的最大金额",我感到很纳闷,于是改为¥1900,取款成功;作为测试工程师,我马上就意识到该系统中的边界值测试没有做好或者根本没有进行边界值的测试。
2.1.5 案例
案例2-6:日历等价类/边界值测试。
最后以一个案例作为本节的结束,如图2-2所示。
图2-2 出生年月日的等价类/边界值测试用例设计
等价类/边界值测试法是最基本的测试用例设计方法,不管是函数级别的软件测试,还是系统级别的软件测试都可以使用。
版权声明:51Testing软件测试网获人民邮电出版社和作者授权连载本书部分章节。任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责任。
相关推荐: