【7】测试用例设计-等价类分析法

一个程序可以有多个输入,等价类划分就是将这些输入数据按照输入需求进行分类,将它们划分为若干个子集,这些子集即为等价类,在每个等价类中选择有代表性的数据设计测试用例

 

 如果没有输入域,是否就不需要等价类方法??

 一个软件要能接收正常的输入,也要能处理无效的输入,给出提示等。

划分等价类

 (1)如果程序要求输入值是一个有限区间的值,则可以将输入数据划分为1个有效等价类和2个无效等价类,有效等价类为指定的取值区间,两个无效等价类分别为有限区间两边的值。例如,某程序要求输入值x的范围为[1,100],则有效等价类为1≤x≤100,无效等价类为x<1和x>100。

(2)如果程序要求输入的值是一个“必须成立”的情况,则可以将输入数据划分为1个有效等价类和1个无效等价类。例如,某程序要求密码正确,则正确的密码为有效等价类,错误的密码为无效等价类。

(3)如果程序要求输入数据是一组可能的值,或者要求输入值必须符合某个条件,则可以将输入数据划分为1个有效等价类和1个无效等价类。例如,某程序要求输入数据必须是以数字开头的字符串,则以数字开头的字符串是有效等价类,不是以数字开头的字符串是无效等价类。

(4)如果输入条件规定了取值的个数(例如,“汽车可登记一至六名车主”),那么就应确定出一个有效等价类和两个无效等价类(没有车主,或车主多于六个)

(5)如果在某一个等价类中,每个输入数据在程序中的处理方式都不相同,则应将该等价类划分成更小的等价类,并建立等价表。

设计步骤

(1)确定输入,划分有效等价类和无效等价类。

选取每一个输入条件(通常是规格说明中的一个句子或短语)并将其划分为两个或更多的组。可以使用图表格来进行划分。注意,我们确定了两类等价类:有效等价类代表对程序的有效输入,而无效等价类代表的则是其他任何可能的输入条件(即不正确的输入值)。

(2)建立等价类表,给等价类编号。

(3)设计数据覆盖有效等价类。尽可能多地覆盖尚未被覆盖的有效等价类,直到测试用例覆盖了所有的有效等价类。

(4)设计数据覆盖无效等价类,每个测试用例只覆盖一个无效值

实例 三角形问题的等价类划分

 

 

 注意:等价类方法中的输入,不仅是数据的输入,有可能是选择条件的不同。

余额宝的提现功能分为快速到账与普通到账2种情况,对余额宝的提现功能进行测试,首先对余额宝提现进行等价类划分。如果选择快速到账,则可将提现功能划分为1个有效等价类与2个无效等价类,具体如下。(1)有效等价类:0<提现金额≤10 000元。(2)无效等价类:提现金额≤0。(3)无效等价类:提现金额>10 000元。

举例

等价类及测试数据:

 

 

 

 

 

 

 

参考书籍《软件测试》黑马程序员编著来源微信读书

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值