测试:等价类划分(黑盒)

所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域。目的在于测试用例的无冗余性。

划分等价类

  1. 有效等价类:指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。检验程序是否实现了规格说明预先规定的功能和性能。
  2. 无效等价类:指对于软件规格说明而言,没有意义的、不合理的输入数据集合。检查软件功能和性能的实现是否有不符合规格说明要求的地方。
    举例:
    有效等价类:1.长度为1-6;2.字符为‘0’-‘9’或者‘a’-‘z’或者‘A’-‘Z’
    无效等价类:3.长度为0;4.长度大于等于7;5.含有英文/数字以外的字符

在使用等价类划分法设计测试用例的重点在于划分有效等价类和无效等价类的细粒度。粒度越粗,设计测试用例越少,粒度越细,设计测试用例越多。相对来说,粒度越细,能发现更多问题。

测试用例完整性划分

  1. 弱一般等价类:基于单缺陷假设,只针对有效等价类中进行用例设计,不针对无效等价类进行用例设计。“弱”主就是指基于单缺陷假设,“一般”是指仅考虑有效等价类的覆盖。
  2. 强一般等价类:基于多缺陷假设,覆盖每个有效等价类进行用例设计。不针对无效等价类进行用例设计。“强”指的是基于多缺陷假设,也就是考虑多个等价类中取值的组合。
  3. 弱健壮等价类:基于单缺陷假设的健壮性测试,同时考虑覆盖有效等价类和无效等价类。 “健壮”是指同时覆盖了无效等价类,也就是异常场景。
  4. 强健壮等价类:基于多缺陷假设的健壮性测试,同时考虑覆盖有效等价类和无效等价类。

构造测试用例

  1. 按照输入条件、有效等价类、无效等价类、 建立等价类表,列出所有划分出的等价类。
  2. 为每一个等价类规定一个唯一的编号。
  3. 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。
  4. 计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。

实例

具体例子可以看以下两篇博客。
CSDN简书

发布了21 篇原创文章 · 获赞 15 · 访问量 4976

猜你喜欢

转载自blog.csdn.net/zdluffy/article/details/99685597
今日推荐