共计 991 个字符,预计需要花费 3 分钟才能阅读完成。
本篇文章,来分享大家比较熟悉的测试用例设计方法—— 等价类划分法 。
首先,我们可以使用上一篇文章介绍的场景法来梳理业务流程。
其次,根据流程中的每个节点的需求说明,使用等价来划分来设计用例。
定义
等价类划分:
依据需求,将输入域划分为若干部分,再从每个部分中选取少数代表性数据当做测试用例,每一类的代表性数据在测试中的作用等价于这一类中的其他值。
在同一个等价类中的数据,如果该测试用例通过,则代表该等价类的所有数据都通过测试,否则,都不通过测试。
图片中的输入框,是一个公司的用户 ID 输入框,限制输入 3 位数的整数。
由此可以分为 3 个等价类:
- 100-999
- 少于 100
- 大于 999
第一个等价类 100-999,输入数据:202 通过测试,则代表其他 100-999 中的其他数据也通过测试。
适用场景
对于等价类划分法,一般适用于有无限多种输入,但又不可能完全穷尽测试,此方法可以使得我们用较少的测试用例,尽可能多地将功能覆盖掉。
分类
在等价类划分法中,可以将数据分为有效等价类和无效等价类。
** 有效等价类:
有意义的输入构成的集合,对于需求规格说明书是合法的
前面的例子中,100-999 属于有效等价类。
无效等价类:
不满足需求的集合,对于需求规格说明书是不合法的
前面的例子中,后面两项分类,都属于无效的等价类。
设计步骤
- 明确测试对象,非测试对象保证正确
- 为每一个等价类规定一个唯一的编号
基于等价类划分的用例设计:
- 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类,重复这一步,最后使得所有有效等价类均被测试用例所覆盖
- 设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步,使所有无效等价类均被覆盖
等价类的特点
- 测试相同的内容
- 如果等价类中的一个测试能够捕获一个缺陷,那么选择该等价类中的其他测试也能捕获该缺陷
- 如果等价类中的一个测试不能捕获缺陷,那么选择该等价类中的其他测试也不会捕获缺陷
- 如果正确的划分等价类,可以大大降低测试用例的数量,测试会准确有效
- 如果错误地将两个不同的等价类当做一个等价类,那就会遗漏一种测试情况
- 相反,把同一个等价类看作两个不同的等价类,那么测试就会是冗余的
注意事项:
- 不但要考虑有效等价类,也要考虑无效等价类
- 仔细划分,审查划分
- 过于粗略可能会遗漏掉软件缺陷
- 组织评审
以上就是本篇文章所要分享的内容,欢迎各位大牛指正。你的指正,能让我在测试之路上快速成长。
Leo Never Stop Fighting!
正文完