分享目的: 黑盒测试用例设计方法在笔试或工作中非常普遍,而其中等价类划分法是最常用的。
1、等价类划分法的概念
把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。在该子集合中,所有的输入数据对于揭露软件中的错误都是等效的。
等价类划分可有两种不同的情况:有效等价类 和 无效等价类。
2、等价类划分法使用的场景
1)规定了取值范围或值的个数的情况;例如红包范围0.01-200
2)规定了输入值的集合或者规定了"必须如何";例如充值金额必须是整数
3)true和false的情况下,可确定一个有效等价类和一个无效等价类;
4)规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类;例如性别输入只能是男、女,男女之外的就是一个无效等价类
5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则);常见用户名、密码规则
6)在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类;例如学校学生成绩评判等级的系统,1-100的分数录入是有效的,但是系统程序会根据录入分数的不同评判出不同等级,例如0-59是不及格、90-100是优秀;那会对等价类进一步划分
3、等价类划分法应用到用例设计中的步骤
1)为每一个等价类规定一个唯一的编号;
2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;
3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止
4、案例分享
下面以新浪微博的注册的密码设置为例
设置规则: 6-16位数字、字母、常用符号的组合,字母区分大小写
1)进行等价类划分,列出每一个有效等价类和无效等价类,并为每一个等价类规定一个唯一的编号
2)设计测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;其中长度选取覆盖边界值。
3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止其中长度选取覆盖边界值。
4)完整的测试用例模板参考如下,自己拓展补充完整
上面是我收集的一些视频和面试题资料。
对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你
关注我的微信公众号【程序员二黑】免费获取