0%

等价类划分和边界值测试方法

转自:https://mp.weixin.qq.com/s/HxfEi_SGJjGABCDF0EqADw

等价类

 等价类是指某个输入域的子集合 在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,子集合中包含的元素要么全部被正确处理,要么全部都没有被正确处理。因此,可以把全部的输入数据划分成若干的等价类,在每一个等价类中取一个数据来进行测试。这样就能以较少的具有代表性的数据进行测试,而取得较好的测试效果。等价类划分是将程序的输入域(较多见)或输出域(较少见)的不同区间划分为不同的数据类,以便导出测试用例

  • 等价类划分定义:设计输入具有代表性的数据子集
  • 覆盖:有效等价类用例设计:一个新用例尽可能多的覆盖且尚未覆盖的有效等价类;无效等价类用例设计:一个新用例仅覆盖一个尚未覆盖的无效等价类
  • 常见的等价类划分类型
    ①区间范围或值的个数:图片小于4M,字符串长度为4
    ②数值划分(枚举):比如图片只能是jpg、png、gif ,则这三种为有效等价类,而其他类型为无效等价类
    ③类型
    ④限制条件:比如用户A只能查他的手机号账单,则可无效等价类:设计A查B手机号账单
    约束条件可看”接口测试总结“中六、接口处理逻辑

需求:

有一个 PC 客户端的命令行工具,这个工具可以接收三个命令行参数,其中,前两个是数字,最后一个是运算符,运算符只支持加减乘除四种,工具的功能就是把前两个数字使用运算符做下运算,然后输出运算结果。

一、等价类划分

1578120999(1)

  • 要培养分类划分的意识,大分类不漏掉,小的有效、无效等价类才不会漏掉
  • 在一个分类中,要将等价类细分,尤其是隐形需求(比如除数为0)
  • 要培养当一个有效用例出来时,与之对应的一堆无效用例

二、边界值

1578121534(1)

有数字的地方就有边界值,注意对数字的理解
就本例而言:

边界值不光是数字
前端边界值测试
读者可以先看下图的两个进度条有没有什么问题,细心的同学会发现在绿色的部分显示的是白色的字,而下面的显示的是黑色的字,这样显示的原因比较明显(白色的字在白色的底是看不见的),但是大家想象下,图中第一个进度条的进度是1%或者2%是什么情况。真实情况是在1%或者2%的进度下绿色部分是不能覆盖住白色的字,到时候页面展示的可能就是个1或者2啦。
1581834184(1)