【软件测试】等价类划分(Equivalence partitioning)

等价类划分【Equivalence partitioning 】也叫做ECP [1]是一种将软件单元的输入数据转换成从该试验的情况下可以推导等效数据的分区的软件测试技术。是典型的黑盒测试内容。原理上每一个测试例子最终应该完成对所有情况的测试,这种测试尝试定义发现错误的方法,从而用来减少用于测试的必要测试次数。这种方法可以有效减少用于测试的时间,因为可以减少测试的情况。

一个简单的等价类测试例子

int safe_add( int a, int b )

{
    int c = a + b;
    if ( a >= 0 && b >= 0 && c < 0 )
    {
        fprintf ( stderr, "Overflow!\n" );
    }
    if ( a < 0 && b < 0 && c >= 0 )
    {
        fprintf ( stderr, "Underflow!\n" );
    }
    return c;
}

有效等价类划分

有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。

无效等价类划分

无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的、不合理的输入数据集合。

等价类划分的方法

1、按区间划分。

2、按数值划分。

3、按数值集合划分。

4、按限制条件或规划划分。

5、按处理方式划分。

(部分内容引用自wiki以及百科基于课堂的实验设计



基于如上等价类划分进行实验设计

				
时间: 2024-10-14 00:59:24

【软件测试】等价类划分(Equivalence partitioning)的相关文章

软件测试--等价类划分的基本概念及实际应用

这一周的测试课程中,我们学习了黑盒测试的一种方法:等价类划分 一  等价类的基本概念 1.所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域.目的在于测试用例的无冗余性. 2.划分等价类( valid / invalid )的两种情况 (1)有效等价类:检验程序是否实现了规格说明预先规定的功能和性能. (2)无效等价类:检查软件功能和性能的实现是否有不符合规格说明要求的地方. 3.常用的等价类划分原则 (1)按区间划分 (2)按数值划分 (3)按数值集合划分 (4)按限制

软件测试:等价类划分-----EditBox问题增加文本框

在经过初步对等价类划分的学习后,老师提出了新的问题 依然是EditBox问题,增加为3个文本框,等价类的划分会有怎样的变化   则题目应如下: 允许1到6个英文字符或数字,按OK结束 有效等价类: 长度:1到6 字符:a-z,A-Z,0-9 无效等价类 长度:0,7 字符:英文/数字以外字符,控制字符,标点符号 有三个文本框 设计如下: 以输入条件划分等价类 条件一  长度在1到6之间 条件二  字符属于a-z,A-Z,0-9 编号 有效等价类 编号 无效等价类 1 1到6个数 5 小于1个数

【软件测试】等价类划分方法的应用

实例——EditBox 允许1到6个英文字符或数字,按OK结束 有效等价类和无效等价类 有效等价类 无效等价类 E1:长度:1到6 T1:长度:0,7 E2:字符:a-z,A-Z,0-9 T2:字符:英文.数字以外字符,控制字符,标点符号 测试用例: 编号 测试用例 预期输出 1(E1,E2)  a 有效输入 2(E1,E2) z 有效输入 3(E1,E2) A 有效输入 4(E1,E2) Z 有效输入 5(E1,E2) 0 有效输入 6(E1,E2) 9 有效输入 7(E1,E2) aaaaa

关于软件测试(3):基于上一篇等价类划分的扩展应用

前景概要:这篇文章主要针对上一篇题目做出一些扩展性的修改,从而导致等价类等价类的变化.这边文章实现了增加至3个editbox的等价类划分方法,从而加强了我对于等价类划分的理解. 1.题目内容:编写3个editBox,要求EditBox 允许1到6个英文字符或数字,按OK结束 有效等价类: 长度:1到6 字符:a-z,A-Z,0-9. 无效等价类 长度:0,7 字符:英文/数字以外字符,控制字符,标点符号. 2.关于等价类的一些必要知识我就不再赘述,上篇文章有提过. 3.划分等价类 编号 有效等价

软件测试技术(二)——使用等价类划分的方法进行编码的UI测试

测试的目标程序 程序代码 划分出的等价类 划分方法 编号 有效等价类 编号 无效等价类 长度 1 长度1-6 5 长度0 6 长度>=7 字符 2 含有字符a-z 7 含有中文字符 3 含有字符A-Z 8 含有特殊字符 4 含有字符0-9 测试用例 编号 输入 覆盖的等价类 期望输出 实际输出 1 aA0 1,2,3,4 success 2 5 不能为空 3 aA01234 6 请输入1-6个英文字母或数字 4 哈 7 请输入1-6个英文字母或数字 5 T_T 8 请输入1-6个英文字母或数字

软件测试(3)-基于等价类划分的一个小例子

程序要求从一个输入框变为3个输入框,其他要求不变 则这次的测试用例本着等价类划分的原则进行如下的修改 表格旁边的就此这次的测试代码 box No.1 box No.2 box No.3 Result abc abc abc success   abc abc box No.1 fail abc   abc box No.2 fail abc abc   box No.3 fail *1   abcdefgh All Fail abc *1 1bcedfgrt Only box No.1 succ

【软件测试】等价类划分方法

方法简介 定义:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法. 划分等价类:等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果.等价类划分可有两

软件测试——多个输入的等价类划分方法应用

多个输入等价类划分测试用例例子: 1.问题:在三个文本框中输入1到6个英文字符或数字,按ok结束. 2.等价类划分: 编号 有效等价类 编号 无效等价类 1 文本框1长度:1-6 8 文本框1长度<1 或者 长度>6 2 文本框2长度:1-6 9 文本框2长度<1 或者 长度>6 3 文本框3长度:1-6 10 文本框3长度<1 或者 长度>6 4 文本框1为字符:a-z A-Z 0-9 11 文本1输入字母数字以外的字符,控制字符,标点符号 5 文本框2为字符:a-z

软件测试:我的课堂感想【二】等价类划分

等价类 所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域.目的在于测试用例的无冗余性. 等价类划分的方法 常用的等价类划分原则 (1)按区间划分 (2)按数值划分 (3)按数值集合划分 (4)按限制条件或规则划分 (5)细分等价类 测试用例的设计方法   (1)在确立了等价类之后,可列出所有划分出的等价类表. (2)为每一个等价类规定一个唯一的编号. (3)设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类.重复这一步,直到测试用例覆盖了所有的有效等价类. (