等价类划分法和边界值分析法

测试过程中遇到的问题
• 不知道是否较全面的测试了所有内容
• 测试的覆盖率无法衡量
• 对新版本的重复测试很难实施
• 存在大量冗余测试影响测试效率
等价类划分
• 等价类划分:是把所有可能的输入数据,即程序的输入域划分成若干部分(子 集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。测试某 等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合 理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就 可以用少量代表性的测试数据,取得较好的测试结果。该方法是一种重要的、 常用的黑盒测试用例设计方法。
• 等价类:是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中 的错误都是等效的。
• 有效等价类:是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集 合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
• 无效等价类:与有效等价类的概念正好相反。
等价类划分法的步骤以及怎样设计测试用例
1.划分等价类
2.建立等价类表
3.设计测试用例
测试用例设计步骤如下:
(1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。
(2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。重复这个步骤, 直到所有的有效等价类均被测试用例所覆盖。
(3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的无效等价类。重复这一步骤, 直到所有的无效等价类均被测试用例所覆盖。
进行等价类划分的依据
(1)按照区间划分 在输入条件规定了取值范围或值的个数的情况下,可以确定一 个有效等价类和两个无效等价类。
(2)按照数值划分 在规定了一组输入数据(假设包括 n个 输入值),并且程序要 对每一个输入值分别进行处理的情况下,可确定 n 个有效等价类(每个值确定一个有 效等价类)和一个无效等价类(所有不允许的输入值的集合)。
(3)按照数值集合划分 在输入条件规定了输入值的集合或规定了“必须如何”的条 件下,可以确定一个有效等价类和一个无效等价类(该集合有效值之外)。
(4)按照限制条件或规则划分 在规定了输入数据必须遵守的规则或限制条件的情况 下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规 则)。
(5)细分等价类 在确知已划分的等价类中各元素在程序中的处理方式不同的情况下, 则应再将该等价类进一步划分为更小的等价类,并建立等价类表。
边界值分析法——边界点
关于边界点,可以分为上点、内点和离点
• 上点:就是边界上的点,不管它是开区间还 是闭区间,就是说,如果该点是封闭的,那 上点就在值域范围内,如果该点是开放的, 那上点就不在值域范围外
• 内点:就是在值域范围内的任意一个点
• 离点:就是离上点最近的一个点,如果边界 是封闭的,那离点就是值域范围外离上点最 近的点,如果边界是开放的,那离点就是域 范围内离上点最近的点
利用边界值作为测试数据的原则
• 如果输入(输出)规定了值的范围,则应该以该范围的边界值及边界附近的值作为测试数据;
• 如果输入(输出)条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个 数多一的数作为测试数据;
• 将规则1和2应用于输出条件,即设计测试用例使输出值达到边界值及其左右的值;
• 如果需求规格说明书中提到的输入或输出是一个有序的集合,应该注意选取有序集合的第一个和 最后一个元素作为测试数据;
• 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试数据;

你可能感兴趣的:(笔记,软件测试)