测试用例设计方法——等价类划分法
- 格式:docx
- 大小:14.61 KB
- 文档页数:3
⿊盒测试法——等价类划分法实验⽬的:1.掌握等价类划分的⽅法1. 掌握按等价类⽅法设计测试⽤例实验内容:1、请⽤等价类划分法为三⾓形问题划分等价类,并设计相应的测试⽤例,测试下⾯三⾓形问题程序,找出缺陷并改正,给出缺陷报告。
2、三⾓形问题:输⼊3个整数a 、b 、c ,分别作为三⾓形的3条边,通过程序判断由3条边构成的三⾓形的类型为等边三⾓形、等腰三⾓形、⼀般三⾓形或者3条边不构成三⾓形。
3、⽅案设计输⼊三条边a 、b 、c 必须满⾜以下条件:条件1: 1≤a≤100条件2: 1≤b≤100条件3: 1≤c≤100条件4: a <b +c条件5: b <a +c条件6: c <a +b如果输⼊值a 、b 、c 满⾜条件1、2、3,则输出下列四种情况之⼀:(1)如果不同时满⾜条件4、5、6,则程序输出“不构成三⾓形”。
(2)如果3条边相等,则程序输出为“等边三⾓形”。
(3)如果恰好有2条边相等,则程序输出为“等腰三⾓形”。
(4)如果3条边都不相等,则程序输出为“⼀般三⾓形”。
划分等价类输⼊条件输⼊三个整数 有效等价类 ⽆效等价类1、 整数2、 3个整数3、 ⾮0整数13、⼀边为⾮整数14、两边为⾮整数15、三遍为⾮整数16、数字个数⼩于317、数字个数⼤于318、⼀边为019、两边为020、三遍为021、⼀边⼩022、两边⼩于0 3、⾮0整数4、正数22、两边⼩于023、三边⼩于024、⼀边⼤于10025、两边⼤于100、三边⼤于100输出条件、 a+c>b、 b+c>a、b+c<=a、c+a<=b 、 a=b且满⾜5、 b=c且满⾜7、c=a且满⾜611、a=b=c12、不满⾜,6,7中的⼀个等价类划分测试⽤例等价类划分测试⽤例测试⽤例编号等价类条件测试⽤例预期结果a b c d11,2,3,4,5,6,7234 普通三⾓形21,2,3,4,5,6,7,8223 等腰三⾓形31,2,3,4,5,6,7,9232 等腰三⾓形41,2,3,4,5,6,7,10322 等腰三⾓形51,2,3,4,5,6,7,11222 等边三⾓形61,2,3,4,12123 不构成三⾓形71,2,3,4,5,6,7,13 2.134 不构成三⾓形(未测试) 81,2,3,4,5,6,8,14 2.1 2.13 不构成三⾓形(未测试) 91,2,3,4,5,6,9,15 2.1 2.1 2.1 不构成三⾓形(未测试) 101,3,4,,1623null 不构成三⾓形(未测试) 111,2,3,172343不构成三⾓形(未测试) 121,2,18023 抛出异常131,2,19002 抛出异常141,2,20000 抛出异常151,2,3,21-122 抛出异常161,2,3,22-1-22 抛出异常171,2,3,23-2-2-2 抛出异常181,2,3,4,241119999 抛出异常191,2,3,4,2511111199 抛出异常201,2,3,4,26111111111 抛出异常211,2,3,4,27235 不构成三⾓形221,2,3,4,28523 不构成三⾓形231,2,3,4,29253 不构成三⾓形。
如何划分等价类测试用例等价类测试是软件测试中常用的一种测试方法,它通过将输入和输出值划分为多个等价类来减少测试用例的数量,以提高测试的效率和覆盖率。
以下是如何划分等价类测试用例的详细说明。
一、什么是等价类测试等价类测试是一种基于黑盒测试的方法,它将所有的输入和输出值分成若干等价类,每一个等价类代表一组相同行为或结果的输入和输出值。
等价类测试的目的是减少测试用例的数量,提高测试效率和覆盖率。
二、如何划分等价类测试用例1. 无效等价类无效等价类包括那些不应该被接受或不符合要求的输入值。
例如,在考试中,学生的年龄必须大于等于18岁才能参加考试,那么小于18岁的学生就属于无效等价类。
2. 有效等价类有效等价类包括那些被接受或符合要求的输入值。
例如,在考试中,学生的年龄必须大于等于18岁才能参加考试,那么大于等于18岁的学生就属于有效等价类。
3. 边界值等价类边界值等价类是一组包含最小值、最大值和某个在中间范围内的值的等价类。
例如,在考试中,学生的分数必须在0-100之间,那么0和100就属于边界值等价类。
4. 特殊值等价类特殊值等价类包括那些具有特殊意义或重要性的值。
例如,在考试中,学生的分数为0或100就属于特殊值等价类。
三、等价类测试的优点及注意事项优点:1. 可以节省测试时间和成本。
2. 能够提高测试效率和覆盖率。
3. 可以减少测试用例的数量,提高测试效果。
注意事项:1. 划分等价类时要尽可能全面、准确地考虑所有可能的情况。
2. 必须确保每个等价类都具有独特的行为或结果。
3. 边界值等价类和特殊值等价类通常需要特别关注。
四、总结等价类测试是软件测试中一种常用的黑盒测试方法,通过将所有的输入和输出值划分为若干等价类,以减少测试用例的数量,提高测试效率和覆盖率。
在划分等价类时要注意全面、准确地考虑各种情况,必须确保每个等价类都具有独特的行为或结果。
边界值等价类和特殊值等价类通常需要特别关注。
简述等价类划分法的思路
等价类划分法是一种测试用例设计技术,其思路是将输入数据划分为相互等价的类别,并选择一个代表性的测试用例来代表每个等价类执行测试。
其思路可以简述如下:
1. 确定需求:首先要明确被测系统的需求。
2. 划分等价类:对于每个输入条件,将可能的输入值划分为若干个等价类。
等价类是指在被测系统中被认为是一致的、具有相同行为的输入值的集合。
具体划分等价类的方法可以根据具体情况选择,如根据数据范围、边界值、特殊值等。
3. 确定代表性测试用例:从每个等价类中选择一个或多个代表性的测试用例。
代表性测试用例应该能够充分覆盖等价类的特性,包括正常情况、边界情况、异常情况等。
4. 编写测试用例:根据选择的代表性测试用例,编写具体的测试用例,包括输入数据和预期输出。
5. 执行测试:使用编写好的测试用例进行系统测试,同时记录测试结果。
6. 结果分析:根据测试结果进行分析,判断被测系统是否符合需求设计,以及是否存在bug。
7. 重复迭代:根据分析结果,对测试用例进行修改和重复测试,直到系统达到预期的质量要求。
通过等价类划分法,可以减少测试用例的数量,提高测试效率和覆盖率,同时也可以发现潜在的问题和缺陷,保证系统的质量和稳定性。
等价类划分法等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的要求和说明,即需求规格说明书。
我们必须仔细分析和推敲说明书的各项需求,特别是功能需求。
把说明书中对输入的要求和输出的要求区别开来并加以分解。
由于穷举测试工作量太大,以至于无法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。
例如,在不了解等价分配计数的前提下,我们做计算器程序的加法测试时,测试了1+1,1+2,1+3和1+4之后,还有必要测试1+5和1+6吗,能否放心地认为它们是正确的?我们感觉1+5和1+6,与前面的1+1,1+2都是很类似的简单加法。
等价类划分的方法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误(除非等价类中的某些例子属于另一等价类,因为几个等价类是可能相交的)。
使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上划分等价类,列出等价类表。
1、划分等价类和列出等价类表等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于发现程序中的错误都是等效的。
并合理地假定:测试某个等价类的代表值就等于对这一类其他值的测试。
因此,可以把全部输入数据合理地划分为若干等价类,在每一个等价类中取一个数据作为测试输入条件,就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分有两种不同的情况:有效等价类和无效等价类。
有效等价类:指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可以检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:与有效等价类的定义相反。
设计测试用例时,要同时考虑这两种等价类。
hil测试用例设计方法测试用例设计方法是软件测试中非常重要的一项工作,在测试用例设计中,我们需要根据不同的测试目标和需求,设计出一系列具有独立性和全面性的测试用例,以帮助我们有效地发现软件中的缺陷和问题。
下面将介绍几种常见的测试用例设计方法。
1. 等价类划分法等价类划分法是一种常用的测试用例设计方法,它通过将输入数据划分成一些等价类,从每个等价类中选择一个或多个测试用例进行测试。
等价类划分法通过挑选代表性的测试用例,可以有效地覆盖大量的情况,从而减少测试用例的数量,提高测试效率。
2. 边界值分析法边界值分析法是一种基于输入数据的测试用例设计方法,它通过选择输入数据的边界值和边界附近的值作为测试用例,以检验系统在边界值情况下的表现。
边界值分析法能够发现因边界条件引起的错误,提高测试用例的有效性和覆盖率。
3. 错误推测法错误推测法是一种基于错误推断的测试用例设计方法,它通过对系统的需求和设计进行分析,推测系统中可能存在的错误,并设计测试用例来验证这些错误。
错误推测法能够帮助测试人员更有针对性地设计测试用例,发现系统中的潜在问题。
4. 因果图法因果图法是一种基于因果关系的测试用例设计方法,它通过构建因果图来确定系统中的输入条件和输出条件之间的关系,从而选择具有代表性的测试用例进行测试。
因果图法能够帮助测试人员深入理解系统的功能和逻辑,设计出能够全面覆盖不同因果关系的测试用例。
5. 正交实验法正交实验法是一种基于假设和灵敏度分析的测试用例设计方法,它通过选择合适的测试参数和参数取值,设计出一组正交实验表,从而通过调整参数的组合来测试系统的不同情况。
正交实验法能够帮助测试人员在较少的测试用例数量下,有效地测试系统的不同参数组合。
以上是几种常见的测试用例设计方法,每种方法都有自己的特点和适用范围。
在实际的测试工作中,我们可以根据具体的项目需求和测试目标,选择合适的测试用例设计方法进行测试用例的设计。
同时,测试用例设计不仅仅是方法的选择,还需要结合测试人员的经验和项目的实际情况,以及不同的测试阶段和需求,综合考虑各个因素,设计出具有全面性和有效性的测试用例。
等价类划分方法·边界值分析方法·错误推测方法·因果图方法等价类划分:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法.1) 划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能.无效等价类:与有效等价类的定义恰巧相反.设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性.2)划分等价类的方法:下面给出六条确定等价类的原则.①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类.②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类.③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类.④在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类.⑤在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则).⑥在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类.3)设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:输入条件有效等价类无效等价类... ... ...... ... ...然后从划分出的等价类中按以下三个原则设计测试用例:①为每一个等价类规定一个唯一的编号.②设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步.直到所有的有效等价类都被覆盖为止.③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止.边界值分析法边界值分析方法是对等价类划分方法的补充.(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.(2)基于边界值分析方法选择测试用例的原则:1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据.2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据.3)根据规格说明的每个输出条件,使用前面的原则1).4)根据规格说明的每个输出条件,应用前面的原则2).5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例.6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例.7)分析规格说明,找出其它可能的边界条件.错误推测法错误推测法: 基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况.输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.因果图方法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图(逻辑模型).因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况.利用因果图生成测试用例的基本步骤:(1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符.(2) 分析软件规格说明描述中的语义.找出原因与结果之间, 原因与原因之间对应的关系. 根据这些关系,画出因果图.(3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现. 为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件.(4) 把因果图转换为判定表.(5) 把判定表的每一列拿出来作为依据,设计测试用例.从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加.除了上述几种黑盒测试的测试用例设计方法之外其他方法还包括判定表驱动分析方法、正交实验设计方法、功能图分析方法等。
等价类划分法
等价类划分法
1、等价类概念与分类
# 等价类解决的问题: 让测试⼈员从穷举测试中解脱出来.
# 等价类
在所有测试数据中, 具有某种共同特征的数据⼦集即为等价类
# 等价类分类
- 有效等价类: 正确的数据
- ⽆效等价类: 错误的数据
1、2等价类划分法解决的问题
解决的问题
划分等价类可以将测试集合科学的从⽆穷⼤减少到有限⼩, 让测试⼯作从穷举测试中解放出来, ⼤⼤减少测试⽤例数量, 提升测试效率.
1.3 等价类划分法设计测试⽤例步骤与应⽤场景
步骤
1、需求分析
2、划分等价类
(1).有效等价类
(2).⽆效等价类
- 规则(需求本⾝触发)
- 长度需求
- 类型规定
- 是否为空(必填项检查)
- 是否可重复输⼊
3、设计⽤列
# 典型应⽤场景: 带有输⼊框的测试
1.4、案例实战 --- QQ号注册⽹站账号
# 根据以下需求, 利⽤等价类划分法基于测试⽤例模板设计测试⽤例
# 需求:
使⽤QQ号注册⽹站账号, QQ号要求: 6-10位⾃然数, 同⼀QQ号不能重复注册
# ⽤例设计步骤
1.分析需求
2.等价类划分(见下表)
- 有效等价类
- ⽆效等价类
3.设计⽤例(见下图)。
测试用例五种方法
1.等价类划分法:将测试数据分为若干等价类,从每个等价类中选取一个典型值进行测试,可以有效降低测试用例的数量。
2. 边界值分析法:从每个等价类的边界值选取测试数据进行测试,可以发现一些潜在的错误。
3. 因果图法:将系统中的因果关系用图形表示出来,根据图形设计测试用例,适用于复杂系统的测试。
4. 正交实验设计法:将测试数据分解成多个维度,每个维度有若干个取值,按照正交表设计测试用例,可以覆盖多种情况。
5. 错误推断法:根据以往的经验和错误模式,推断出可能存在的错误,设计测试用例进行验证,可以提高测试用例的有效性。
- 1 -。
等价类划分法的步骤
等价类划分法是一种测试用例设计技术,它将测试数据划分为相互等价的类别,以便尽可能少地测试覆盖所有可能的输入和输出。
以下是等价类划分法的步骤:
1. 确定输入和输出变量:首先,需要明确需要测试的输入和输出变量。
这些变量可以是任何类型,例如整数、字符串、日期等。
2. 确定可能的输入值:接下来,需要确定每个输入变量的可能取值。
这可以通过查看系统规范、用户需求或开发文档来完成。
3. 划分等价类:在此步骤中,需要将每个输入变量的可能取值划分为等价类。
等价类是一组具有相同测试行为的输入值。
4. 确定代表输入值:为每个等价类选择代表性输入值。
代表性输入值应该能够代表其等价类中的所有输入值,并覆盖尽可能多的测试情况。
5. 编写测试用例:使用代表性输入值和预期输出值,编写测试用例。
确保测试用例覆盖了每个等价类中的所有测试情况。
6. 执行测试用例:执行测试用例并记录测试结果。
如果测试结果与预期结果相符,则测试用例为通过,否则为失败。
7. 重复步骤4至6:对于每个输入变量,重复步骤4至6,以确保覆盖了所有等价类。
通过以上步骤,等价类划分法可以帮助测试人员设计出简洁、高效的测试用例,从而提高软件测试的质量和效率。
- 1 -。
对等价类划分法的感悟
(2016/2/21-2016/2/28)
来北京的第一周感觉时间过得好快,新鲜、刺激、充实。在
本周内我注重学习了等价类划分法,并结合该方法完成了一个现
金管理系统的基版测试。该系统主要包括结算账户管理、账务处
理、多级账簿、资金归集、资金池等功能。其中账务处理业务中
主要包含三个子业务分别是:现金存入业务处理、现金支出业务
处理、账务查询。多级账簿业务主要涉及到多级账簿的开通、开
设和注销等功能。
在这个项目中我主要负责现金存入模块的测试用例的设计以
及执行。首先是基本功能的实现也就是输入框、选择框等功能是
否能够实现,其次针对需求验证其非功能点即可输入字符串的类
型以及长度进行验证。在对这些数据类型和字符串的验证中我主
要运用了边界值法和等价类划分法。
例如:等价类划分法的使用
在填写现金存入的账单中我们主要输入收款人账号、币种、
收款人户名、收款账簿编号、交易金额等项内容。其中收款人账
号主要有三种状态无效账号、已注销账号、和有效账号。币种主
要有01、02、03 以及其他无效类型。收款人户名主要有存在和
不存在两种状态。收款账簿编号主要有有效账簿编号和无效账簿
编号两种状态。交易金额主要有输入负数、0、大于0三种类型
的选择。
依据这些条件,将各项输入要素划分为有效等价类和无效等
价类,效果如下图所示:
输入要素 有效 无效
收款人账号 有效账号a1 无效a2、注销a3
币种 01b、02b1、03b2
收款人户名 存在c1 不存在c2
收款人账簿编号 有效d1 无效d2
交易金额 0e1、大于0e2 负数e3
等价类划分法的要义:
1)为每一个等价类规定一个唯一的编号;
2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖
地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为
止;
3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无
效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
则测试用例的设计为:
a3 b1 c1 d1 e2、a3 b2 c1 d1 e3、a3 b3 c1 d1 e2
a1 b1 c1 d1 e2、a2 b1 c1 d1 e2
a1 b1 c2 d1 e2
a1 b1 c2 d2 e2
a1 b1 c2 d2 e1
因此,等价类划分法优点就凸显了了出来,即测试某等价类的代
表值就等于对这一类其它值的测试,因此,可以把全部输入数据
合理划分为若干等价类,在每一个等价类中取一个数据作为测试
的输入条件就可以用少量代表性的测试数据取得较好的测试结
果。