一个等价类划分的例子(三角形)

合集下载

黑盒测试的五种典型方法

黑盒测试的五种典型方法

1.等价类划分等价类划分是一种典型的黑盒测试方法。

等价类是指某个输入域的集合。

它表示对揭露程序中的错误来说,集合中的每个输入条件是等效的。

因此我们只要在一个集合中选取一个测试数据即可。

等价类划分的办法是把程序的输入域划分成若干等价类,然后从每个部分中选取少数代表性数据当作测试用例。

这样就可使用少数测试用例检验程序在一大类情况下的反映。

在考虑等价类时,应该注意区别以下两种不同的情况:有效等价类:有效等价类指的是对程序的规范是有意义的、合理的输入数据所构成的集合。

在具体问题中,有效等价类可以是一个,也可以是多个。

无效等价类:无效等价类指对程序的规范是不合理的或无意义的输入数据所构成的集合。

对于具体的问题,无效等价类至少应有一个,也可能有多个。

确定等价类有以下几条原则:如果输入条件规定了取值范围或值的个数,则可确定一个有效等价类和两个无效等价类。

例如,程序的规范中提到的输入条包括“……项数可以从1到999……”,则可取有效等价类为“l考项数<999”,无效等价类为“项数<l,,及“项数>999”。

输入条件规定了输入值的集合,或是规定了“必须如何”的条件,则可确定一个有效等价类和一个无效等价类。

如某程序涉及标识符,其输入条件规定“标识符应以字母开头……”则“以字母开头者”作为有效等价类,“以非字母开头”作为无效等价类。

如果我们确知,已划分的等价类中各元素在程序中的处理方式是不同的,则应将此等价类进一步划分成更小等价类。

输入条件有效等价类无效等价类。

根据已列出的等价类表,按以下步骤确定测试用例:为每个等价类规定一个唯一的编号;设计一个测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。

重复这一步,最后使得所有有效等价类均被测试用例所覆盖;设计一个新的测试用例,使其只覆盖一个无效等价类。

重复这一步,使所有无效等价类均被覆盖。

这里强调每次只覆盖一个无效等价类。

这是因为一个测试用例中如果含有多个缺陷,有可能在测试中只发现其中的一个,另一些被忽视。

《一个等价类划分的例子(三角形)》

《一个等价类划分的例子(三角形)》

范例:程序规定;输入三个整数作为三边的边长构成三角形。

当此三角形为一般三角形、等腰三角形、等边三角形时,分别作计算。

用等价类划分方法为该程序进行测试用例设计。

解:设a、b、c代表三角形的三条边。

1)分析题目中给出的和隐含的对输入条件的要求:a)整数b)3个数c)非零数d)正数e)两边之和大于第三边f)等腰g)等边2)列出等价类表并编号有awtfr知编号V ♦£号Q输入3个整数Q 整薮21。

一边为非整数0a为非整数□1加b为驻整数一13/C为非整数214-两边为非整数3a、b为非整数15。

b、c为非整数。

心a、c为非整数。

17一三边都为非整教―史三个数Q2。

只缓3波只给a“1卯只给按2“只给221/只给两边。

只徐a、%2加只给b、323。

只给a、c,24/给出三个以上225/3。

一边为察a=0。

2Wb=0- 27,c=g 2豺两边为*a=b=0 曰2"b=c=Ck 30,a-c-0^ 3W三边都为零a=b=c=0^ 32。

正处4/—边.<0/a<“33/b<0<?34/c<0^ 35-两边。

a<0 且b<OP 36。

b<0且c<驴37,a<0 且c<0。

38-三边《0。

a<0且b<0且c《(K3如构成一般三弟形。

a+-b>c^ 5。

a+bvcQ 4Wa+b=c" 41/ b+cAa—b+c〈a—4加b+c—p 43/ "c>b。

7Pa+c<b^ 44/a十C M DF45-构成等腰三角形。

a=bQ 欧•P Qb=c。

Q Q a-c (且两边之和大于第三也)。

1"■P构成等边三角形3a=b=c。

IS■P■P(如耻C)尸覆盖有效等俺类编号(ai加c)尸覆盖有效等价类编号I 3,斗4小1-7P0,4?W济4・ 4. 5/1-7,霁3.D, 5P刃/4 5,加1-7, P#3,4, g妍5- 4, 5尸1-7- IIP0,0, 5,29『4. 4, 57L7, 1拍3.0, M3M2.5, 4, 5「1A0,1帅31】•3. 4.5,霁00,0, M3*3, 45,引1牝-3,4, 5『琢35. 45, 5十15十q 5/3, 4 5, 5 5口34, -5口35 口3 5, 4『5 5『-3,45/3如35 45, 5如•3、4,小37-3i *力I"4余3舞,4, v血-3(4-5^39『,,立3,1, 5口4W3, 4 Q孙r h/ W g,4, W3,1,24"3, ,W24日3.2, 2编日3, 4, 5,算1,4,舞4牝3,4, I F45/。

等价类划分法

等价类划分法

等价类划分法等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的要求和说明,即需求规格说明书。

我们必须仔细分析和推敲说明书的各项需求,特别是功能需求。

把说明书中对输入的要求和输出的要求区别开来并加以分解。

由于穷举测试工作量太大,以至于无法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。

例如,在不了解等价分配计数的前提下,我们做计算器程序的加法测试时,测试了1+1,1+2,1+3和1+4之后,还有必要测试1+5和1+6吗,能否放心地认为它们是正确的?我们感觉1+5和1+6,与前面的1+1,1+2都是很类似的简单加法。

等价类划分的方法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例。

每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误(除非等价类中的某些例子属于另一等价类,因为几个等价类是可能相交的)。

使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上划分等价类,列出等价类表。

1、划分等价类和列出等价类表等价类是指某个输入域的子集合。

在该子集合中,各个输入数据对于发现程序中的错误都是等效的。

并合理地假定:测试某个等价类的代表值就等于对这一类其他值的测试。

因此,可以把全部输入数据合理地划分为若干等价类,在每一个等价类中取一个数据作为测试输入条件,就可以用少量代表性的测试数据取得较好的测试结果。

等价类划分有两种不同的情况:有效等价类和无效等价类。

有效等价类:指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。

利用有效等价类可以检验程序是否实现了规格说明中所规定的功能和性能。

无效等价类:与有效等价类的定义相反。

设计测试用例时,要同时考虑这两种等价类。

等价类划分法含例子

等价类划分法含例子

1.等价类划分法等价类划分是一种典型的黑盒测试方法,使用这一方法时,完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。

等价类划分方法把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据做为测试用例。

使用这一方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。

2.划分等价类:等价类是指某个输入域的子集合。

在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。

等价类划分可有两种不同的情况:有效等价类和无效等价类。

等价类的划分有两种不同的情况:①有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。

利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

②无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。

对于具体的问题,无效等价类至少应有一个,也可能有多个。

在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。

3.划分等价类的标准:1)完备测试、避免冗余;2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合;3)并是整个集合:完备性;4)子集互不相交:保证一种形式的无冗余性;5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到"相同的执行路径".4.划分等价类的原则。

(1) 如果输入条件规定了取值范围,或值的个数,则可以确立一个有效等价类和两个无效等价类。

例如,在程序的规格说明中,对输入条件有一句话:“…… 项数可以从1到999 ……”则有效等价类是“1≤项数≤999”两个无效等价类是“项数<1”或“项数>999”。

黑盒测试——等价类法——三角形问题

黑盒测试——等价类法——三角形问题

例:输入三个整数a,b,c ,分别作为三角形的3条边(假定a,b,c在1——100之间取值。

),通过程序判断由这三条边构成的三角形是:等边三角形、等腰三角形、一般三角形或非三角形(不能构成三角形)。

问题分析:
假定a,b,c在1——100之间取值,三角形问题可以详细描述为:
输入3个整数a,b,c,分别作为三角形的三条边,要求a,b,c必须满足下列条件:
C1:a在1到100之间
C2:b在1到100之间
C3:c在1到100之间
C4:a<b+c
C5:b<a+c
C6:c<b+a
输出:
如果不满足前3个条件(C1-C3),则输出“请输入1到100之间的整数”;
如果满足前3个条件,则输出下面4种情况:
(1)如果不满足条件C4-C6中的一个,则输出“非三角形”
(2)如果三条边相等,则程序输出为“等边三角形”
(3)如果恰好有两条边相等,则输出为“等腰三角形”
(4)如果三条边都不相等,则输出为“一般三角形”
设计覆盖上述等价类的测试用例:。

软件测试-三角形问题

软件测试-三角形问题

9
10
11
12
13
14
15
16
T T T T
T T T F
T T F T
T T F F
T F T T
T F T F
T F F T
T F F F

√ √ √ √
制作者:
Page 18
决策表法
根据决策表4-13,可设计测试用例,如表4-14所示。
表4-14 三角形问题的决策表测试用例 测试用例 Test Case 1 Test Case 2 Test Case 3 Test Case 4 Test Case 5 Test Case 6 Test Case 7 Test Case 8 Test Case 9 a 10 4 ? ? 4 ? 5 4 3 b 4 4 ? ? 4 ? 4 5 4 c 4 4 ? ? 5 ? 4 4 5
三个数
1
整数
2
取值范围 在1~100
3
三个数 整数 1≤a≤100 1≤b≤100 1≤c≤100 4,5,6
12
13 14 15 16 17 18
Page 5
三边为00,0,0
一边小于0-1,7,8 两边小于0-9,-,1,6 三边小于0-1,-2,-8 一边大于100101,56,50 两边大于100101,107,89 三边大于100101,109,176
制作者:
表4-2 三角形问题的测试用例
等价类划分法——以输出域划分等价类
以三角形问题为例,要求输入三个整数a、b、c,分 别作为三角形的三条边,取值范围在1~100之间, 判断由三条边构成的三角形类型为等边三角形、等 腰三角形、一般三角形(包括直角三角形)以及非 三角形。 在多数情况下,是从输入域划分等价类,但对于三 角形问题,从输出域来定义等价类是最简单的划分 方法。

等价类划分法测试用例的设计与实现

等价类划分法测试用例的设计与实现
引用:
[1] 范明红,浦云明,汪志华 . 等价类测试与划分研究 [J]. 计算机技术与发展 .2009(07).
[2] 浦云明,陈黎震 . 基于划分的等价类测试 [J]. 计算机工 程与设计 .2009(19).
[3] 李刚,姚红 . 软件测试用例设计的方法与实现 [J]. 大众 科技 .2012(01).
b、设计有效等价类需要的测试用例。为覆盖①、⑤、⑧三 个有效等价类,可以设计一个共用的测试用例 ;
c、为每一个无效等价类至少设计一个测试用例。 实例 4 保险公司计算保费费率的程序 某保险公司的人寿保险的保费计算方式为 :投保额 × 保险 费率其中,保险费率依点数不同而有别,10 点及 10 点以上保险 费率为 0.6%,10 点以下保险费率为 0.1% ;而点数又是由投保人 的年龄、性别、婚姻状况和抚养人数来决定。 a、分析程序规格说明中给出和隐含的对输入条件的要求, 列出等价类表(包括有效等价类和无效等价类)。 ■年龄 :一位或两位非零整数,值的有效范围为 1~99 ■性别 :一位英文字符,只能取值‘M’或’F’ ■婚姻 :字符,只能取值‘已婚’或‘未婚’ ■抚养人数 :空白或一位非零整数(1~9) ■点数 :一位或两位非零整数,值的范围为 1~99 b、根据(1)中的等价类表,设计能覆盖所有等价类的测试 用例。 4 总结 本文讨论了如何使用等价类划分法来设计测试用例。
(1)按照区间划分在输入条件规定了取值范围或值的个数的 情况下,可以确定一个有效等价类和两个无效等价类。
例 :程序输入条件为小于 100 大于 10 的整数 x,则有效等价 类为 10 < x < 100,两个无效等价类为 x ≤ 10 和 x ≥ 100。
(2)按照数值划分在规定了一组输入数据(假设包括 n 个输 入值),并且程序要对每一个输入值分别进行处理的情况下,可 确定 n 个有效等价类(每个值确定一个有效等价类)和一个无效 等价类(所有不允许的输入值的集合)。

等价变形举例

等价变形举例

等价变形举例等价变形是指将一个数学表达式或问题用不同的形式表达出来,但其数值或解决方法保持不变。

下面列举了十个等价变形的例子,每个例子都包含了清晰的描述和详细的计算步骤。

1. 二次方程的解:给定一个二次方程ax^2 + bx + c = 0,可以使用求根公式x = (-b ± √(b^2 - 4ac))/(2a)来求解。

这个公式可以通过配方法得到等价变形:x = (-b ± √(b^2 - 4ac))/(2a) = 2c/(-b ± √(b^2 - 4ac))。

2. 三角函数的恒等变形:三角函数有很多恒等变形,例如sin^2(x) + cos^2(x) = 1,tan(x) = sin(x)/cos(x),cot(x) = cos(x)/sin(x)等等。

这些恒等变形可以通过三角函数的定义和三角恒等式来证明。

3. 梯形面积公式的等价变形:梯形的面积公式可以表示为 A = (a + b)h/2,其中a和b是梯形的上底和下底的长度,h是梯形的高度。

这个公式可以通过将梯形分割成两个三角形来推导得到,即 A = (1/2)bh1 + (1/2)bh2 = (a + b)h/2。

4. 二项式定理的等价变形:二项式定理可以表示为(x + y)^n = C(n,0)x^n + C(n,1)x^(n-1)y + C(n,2)x^(n-2)y^2 + ... + C(n,n)y^n,其中C(n,k)表示组合数。

这个公式可以通过二项式系数的递推关系和数学归纳法来证明。

5. 平行四边形面积公式的等价变形:平行四边形的面积可以表示为A = bh,其中b是平行四边形的底边的长度,h是平行四边形的高度。

这个公式可以通过将平行四边形分割成两个相等的三角形来推导得到,即A = (1/2)bh + (1/2)bh = bh。

6. 对数函数的等价变形:对数函数有很多等价变形,例如ln(ab) = ln(a) + ln(b),ln(a/b) = ln(a) - ln(b),ln(a^b) = bln(a)等等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档