软件质量与测试第三次讲课

上传人:m**** 文档编号:570898089 上传时间:2024-08-07 格式:PPT 页数:61 大小:1.20MB
返回 下载 相关 举报
软件质量与测试第三次讲课_第1页
第1页 / 共61页
软件质量与测试第三次讲课_第2页
第2页 / 共61页
软件质量与测试第三次讲课_第3页
第3页 / 共61页
软件质量与测试第三次讲课_第4页
第4页 / 共61页
软件质量与测试第三次讲课_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《软件质量与测试第三次讲课》由会员分享,可在线阅读,更多相关《软件质量与测试第三次讲课(61页珍藏版)》请在金锄头文库上搜索。

1、黑盒测试黑盒测试黑盒测试黑盒测试等价类测试等价类测试等价类测试等价类测试1等价类测试原因原因等价类划分的步骤等价类划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分21产生原因穷举测试是不可能的任务穷举测试是不可能的任务X,YX,Y取整数,字长取整数,字长取整数,字长取整数,字长3232位,位,位,位,可能采用的测试数据组:可能采用的测试数据组:可能采用的测试数据组:可能采用的测试数据组: 2 23232 2 232322 26464,穷举测试,穷举测试,穷举测试,穷举测试合法输入,不同执行路合法输入,不同执行路合法输入,不同执行路合

2、法输入,不同执行路径数达径数达径数达径数达5 52020条,需条,需条,需条,需5 5亿亿亿亿年。年。年。年。如何选择测试如何选择测试用例?用例?只能从大量的可能数只能从大量的可能数据中选择一部分作为据中选择一部分作为测试用例测试用例等价类划分完备的测试完备的测试无冗余的测试无冗余的测试等等价价类类测测试试31产生原因等等价价类类测测试试基本思想:基本思想:把程序的输入域把程序的输入域划分划分成若干部分,成若干部分,然后从每个部分中选取少数然后从每个部分中选取少数代表性代表性数据当作测数据当作测试用例,每一类的代表性数据在测试中的作用试用例,每一类的代表性数据在测试中的作用等价于这一类中的其它

3、值。等价于这一类中的其它值。输入域输入域划分划分互不相交的子集互不相交的子集子集的并是整个集合子集的并是整个集合完备性完备性无冗余无冗余1234选择代表元素选择代表元素4等价类测试原因原因等价类划分的步骤等价类划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分52等价类和划分等等价价类类测测试试等价类等价类等价类的性质等价类的性质设设R是非空集合是非空集合A上的等价关系,对任意上的等价关系,对任意 ,令,令 ,则称则称 为为x x关于关于R R的等价类的等价类,简记做,简记做xx。 ,且,且,且,且 ; 表明任何等价类都是集合表明任何

4、等价类都是集合A A的非空子集的非空子集 若若若若xRyxRy,则,则,则,则x=xyx=xy; 以上两性质表明在以上两性质表明在A A中任取两个元素,中任取两个元素,它们的等价类或相等,或不交它们的等价类或相等,或不交 若若若若 ,则,则,则,则 ; 。 表明所有等价类的并集就是表明所有等价类的并集就是A A 62等价类和划分等等价价类类测测试试划分的含义是将整体分成小块,使得所有事物都在某个小块划分的含义是将整体分成小块,使得所有事物都在某个小块中,不会遗漏。中,不会遗漏。给定集合给定集合B以及以及B的一组子集的一组子集A1,A2,An,这些子集是这些子集是B的一个划分,当且仅当:的一个划

5、分,当且仅当: ,且,且 ,这样的一个划分是一组子集:,这样的一个划分是一组子集: ,所以我们常,所以我们常把单个子集看作是划分的元素。把单个子集看作是划分的元素。 1234集合集合A上的等价关系与集合上的等价关系与集合A的划分一一对应的划分一一对应划分划分7等价类测试原因原因等价类划分的步骤等价类划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分83划分步骤等等价价类类测测试试通过分析需求规格说明,划分等价类,通过分析需求规格说明,划分等价类,列出等价类表列出等价类表设计测试用例设计测试用例9等价类测试原因原因等价类划分的步骤等价类

6、划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分103确定等价类的一般原则等等价价类类测测试试有效等价类有效等价类/无效等价类无效等价类v 有效等价类有效等价类:对于程序的规格说明而言,是:对于程序的规格说明而言,是合合理的理的、有意义的有意义的输入数据构成的集合输入数据构成的集合v无效等价类无效等价类:对于程序的规格说明而言,是:对于程序的规格说明而言,是不合不合理的理的、无意义的无意义的输入数据构成的集合输入数据构成的集合 用于检验程序是否实现了规格说明预先规定的性能和用于检验程序是否实现了规格说明预先规定的性能和功能功能 用于

7、检查程序中功能和性能的实现是否不符合规格说用于检查程序中功能和性能的实现是否不符合规格说明要求明要求(检验程序对无效数据的处理检验程序对无效数据的处理)不能仅接受合理数据,还要经受意外不能仅接受合理数据,还要经受意外的考验,接受无效或不合理的数据的考验,接受无效或不合理的数据113确定等价类的一般原则等等价价类类测测试试1.若输入条件规定了若输入条件规定了取值范围或值的个数取值范围或值的个数,则,则可确立一个有效等价类和两个无效等价类。可确立一个有效等价类和两个无效等价类。v程序的规格说明中,要求输入满足:程序的规格说明中,要求输入满足:“ 项数可从项数可从1到到999 ” 有效等价类是有效等

8、价类是“1项数项数999”两个无效等价类是两个无效等价类是“项数项数1”或或“项数项数999”。1999x有效等价类有效等价类无效等价类无效等价类无效等价类无效等价类123确定等价类的一般原则等等价价类类测测试试2.若输入条件规定了若输入条件规定了输入值的集合输入值的集合,或规定了,或规定了“必须如何必须如何”的条件,则可确立一个有效等价的条件,则可确立一个有效等价类和一个无效等价类类和一个无效等价类v变量标识符规定为变量标识符规定为“以字母打头的以字母打头的串串”。有效等价类是有效等价类是“所有以字母打头的变量标识符所有以字母打头的变量标识符”无效等价类是无效等价类是“所有不以字母打头的变量

9、标识符所有不以字母打头的变量标识符”133确定等价类的一般原则等等价价类类测测试试3.若输入条件是一个若输入条件是一个布尔量布尔量,则可确定一个有效等,则可确定一个有效等价类和一个无效等价类价类和一个无效等价类4.若规定了若规定了输入数据的一组值输入数据的一组值,且程序要对每个输,且程序要对每个输入值分别进行处理。则可为每一个输入值确立一个入值分别进行处理。则可为每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,有效等价类,此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。它是所有不允许的输入值的集合。143确定等价类的一般原则等等价价类类测测试试5.规定了输入数

10、据规定了输入数据必须遵守的规则必须遵守的规则,则可以确立一,则可以确立一个有效等价类(符合规则)和若干个无效等价类个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)(从不同角度违反规则)6.若确知已划分等价类中各元素在程序中若确知已划分等价类中各元素在程序中处理方式处理方式不同不同,则应将此等价类进一步划分成更小的等价类,则应将此等价类进一步划分成更小的等价类153确定等价类的一般原则等等价价类类测测试试等价类测试适用于:等价类测试适用于:可用数量衡量的独立变量可用数量衡量的独立变量可用数量衡量的独立变量可用数量衡量的独立变量布尔变量布尔变量布尔变量布尔变量逻辑变量逻辑变量逻辑变

11、量逻辑变量等价类测试不适用于:等价类测试不适用于:相互有依赖关系的变量相互有依赖关系的变量相互有依赖关系的变量相互有依赖关系的变量16等价类测试原因原因等价类划分的步骤等价类划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分175测试用例设计等等价价类类测测试试为每个等价类规定一个唯一的编号;为每个等价类规定一个唯一的编号;设计一个新的测试用例,使之设计一个新的测试用例,使之尽可能多地覆盖尽可能多地覆盖尚未被覆盖的有效等价类尚未被覆盖的有效等价类,重复这一步直至所,重复这一步直至所有的有效等价类都被覆盖为止;有的有效等价类都被覆盖为止

12、;设计一个新的测试用例,使其设计一个新的测试用例,使其仅覆盖一个尚未仅覆盖一个尚未被覆盖的无效等价类被覆盖的无效等价类,重复这一步直至所有的,重复这一步直至所有的无效等价类都被覆盖为止。无效等价类都被覆盖为止。185测试用例设计等等价价类类测测试试基于假设:基于假设:输入变量是真正独立的;输入变量是真正独立的;分类的决定因素分类的决定因素: , ;方法分类:方法分类:弱一般等价类测试、强一般等价类测弱一般等价类测试、强一般等价类测试、弱健壮等价类测试、强健壮等价类测试试、弱健壮等价类测试、强健壮等价类测试; ;可用于程序的可用于程序的输入定义域或输出值域输入定义域或输出值域195测试用例设计等

13、等价价类类测测试试弱一般等价类弱一般等价类测试测试举例举例强一般等价类测试强一般等价类测试弱健壮等价类测试弱健壮等价类测试强健壮等价类测试强健壮等价类测试205测试用例设计-弱一般等价类等等价价类类测测试试等价类等价类 有效值:有效值:a=x1=b无效值:无效值:x1b有效值:有效值:c=x2=d无效值:无效值:x2d abcdx2x1有效有效输入输入则整个坐标轴均则整个坐标轴均为为x1的有效值的有效值a= ?b= ?“单缺陷单缺陷”假设假设:失效极少是由两个或多个缺陷的同时发生引起的:失效极少是由两个或多个缺陷的同时发生引起的弱一般等价类测试通过使用一个测试用例中的每个等价类区间的一个变弱一

14、般等价类测试通过使用一个测试用例中的每个等价类区间的一个变量实现量实现215测试用例设计-弱一般等价类等等价价类类测测试试abcdx2x1efg取值区间取值区间x1:a,b),b,c),c,dx2:e,f),f,g无效值:无效值:x1d无效值:无效值:x2g基于单缺陷、正常值(一般)基于单缺陷、正常值(一般)225测试用例设计-弱一般等价类等等价价类类测测试试基于单缺陷、正常值基于单缺陷、正常值abcdx2x1efg有效等价类有效等价类对于对于x1x1M1=x1|a=x1bM1=x1|a=x1bM2=x1|b=x1cM2=x1|b=x1cM3=x1|c=x1=dM3=x1|c=x1=d对于对于

15、x2x2N1=x2|e=x2fN1=x2|e=x2fN2=x2|f=x1=gN2=x2|f=x1=g测试用例测试用例 输入等价类输入等价类输入等价类输入等价类1 1M1,N1M1,N1M1,N2M1,N22 2M2,N2M2,N2M2,N1M2,N13 3M3,N1M3,N1M3,N2M3,N2对于对于n变量,设第变量,设第i个变量的有效等个变量的有效等价类是价类是mi个,则测试用例总数:个,则测试用例总数:max(mi)个。个。235测试用例设计强一般等价类等等价价类类测测试试基于多缺陷、正常值基于多缺陷、正常值abcdx2x1有效值:有效值:a=x1=b无效值:无效值:x1b有效值:有效值

16、:c=x2=d无效值:无效值:x2d与弱一般等价类相同与弱一般等价类相同245测试用例设计-强一般等价类等等价价类类测测试试基于多缺陷、正常值(一般)基于多缺陷、正常值(一般)abcdx2x1efg取值区间取值区间x1:a,b),b,c),c,dx2:e,f),f,g无效值:无效值:x1d无效值:无效值:x2g如果整个坐标轴如果整个坐标轴均为均为x1的有效值,的有效值,则强、弱等价类则强、弱等价类的测试用例是一的测试用例是一样的。样的。255测试用例设计-强一般等价类等等价价类类测测试试基于多缺陷、正常值(一般)基于多缺陷、正常值(一般)abcdx2x1efg测试用例测试用例 输入等价类输入等

17、价类1 1M1,N1M1,N12 2M1,N2M1,N23 3M2,N1M2,N14 4M2,N2M2,N25 5M3,N1M3,N16 6M3,N2M3,N2对于对于n变量,设第变量,设第i个变量个变量的有效等价类是的有效等价类是mi个,个,则测试用例总数:则测试用例总数: m1* m2* *mn基于多缺陷假设需要等价类笛卡尔积的每个元素对应的测试用例基于多缺陷假设需要等价类笛卡尔积的每个元素对应的测试用例265测试用例设计-强一般等价类等等价价类类测测试试笛卡儿积能保证两种意义上的笛卡儿积能保证两种意义上的“完备性完备性” 覆盖所有的等价类覆盖所有的等价类 有可能的输入组合中的一个有可能的

18、输入组合中的一个275测试用例设计弱健壮等价类等等价价类类测测试试基于单缺陷、健壮值基于单缺陷、健壮值 abcdx2x1单缺陷与多缺陷单缺陷与多缺陷假假设产生弱等价类与强设产生弱等价类与强等价类测试之分等价类测试之分是否进行无效数据是否进行无效数据的处理的处理产生健壮与一产生健壮与一般等价类测试之分般等价类测试之分285测试用例设计弱健壮等价类等等价价类类测测试试弱弱-基于单缺陷假设基于单缺陷假设健壮健壮-考虑无效值考虑无效值对有效输入,使用每个有效等价类的一个值对有效输入,使用每个有效等价类的一个值对无效输入,测试用例将拥有一个无效值并对无效输入,测试用例将拥有一个无效值并保持其余的值都是有

19、效的保持其余的值都是有效的 295测试用例设计弱健壮等价类等等价价类类测测试试基于单缺陷、健壮值基于单缺陷、健壮值无效等价类无效等价类对于对于x1x1M4=x1|x1aM4=x1|x1dM5=x1|x1d对于对于x2x2N3=x2|x2eN3=x2|x2gN4=x2|x2g测试用例测试用例 补充输入等价类补充输入等价类1,21,2(M4,N1)(M4,N2)(M4,N1)(M4,N2)3,43,4(M5,N1)(M5,N2)(M5,N1)(M5,N2)对于对于n变量,设第变量,设第i个变量的有效个变量的有效等价类是等价类是mi个,无效等价类是个,无效等价类是li个,则测试用例总数:个,则测试用

20、例总数: abcdx2x1efgmax( mi)+ (l1+ l2 +ln)个。个。305测试用例设计弱健壮等价类等等价价类类测测试试基于单缺陷、健壮值基于单缺陷、健壮值 规格说明常常未定规格说明常常未定义无效测试用例所预义无效测试用例所预期的输出是什么期的输出是什么abcdx2x1efg存在的问题存在的问题315测试用例设计强健壮等价类等等价价类类测测试试基于多缺陷、健壮值基于多缺陷、健壮值 abcdx2x1325测试用例设计强健壮等价类等等价价类类测测试试基于多缺陷、健壮值基于多缺陷、健壮值取值区间取值区间x1:a,b),b,c),c,dx2:e,f),f,g无效值:无效值:x1d无效值:

21、无效值:x2gabcdx2x1efg335测试用例设计强健壮等价类等等价价类类测测试试基于多缺陷、健壮值基于多缺陷、健壮值测试用例测试用例输入等价类输入等价类1,21,2(M1,N1)(M1,N2)(M1,N1)(M1,N2)3,43,4(M2,N1)(M2,N2)(M2,N1)(M2,N2)5,65,6(M3,N1)(M3,N2)(M3,N1)(M3,N2)7,87,8(M4,N1)(M4,N2)(M4,N1)(M4,N2)9,109,10(M5,N1)(M5,N2)(M5,N1)(M5,N2)11,1211,12(M1,N3)(M1,N4)(M1,N3)(M1,N4)对于对于n变量,设第变

22、量,设第i个变量的有个变量的有效等价类是效等价类是mi个,无效等价类个,无效等价类是是li个,则测试用例总数:个,则测试用例总数:abcdx2x1efg( m1+l1)* (m2 +l2) * *(mn +ln)345测试用例设计举例等等价价类类测测试试 例一:三角形问题例一:三角形问题例一:三角形问题例一:三角形问题 (不考虑边长限制)(不考虑边长限制)(不考虑边长限制)(不考虑边长限制)输入定义域测试输入定义域测试 考虑三角形类型考虑三角形类型 考虑三角形是否存在考虑三角形是否存在输入条件的等价类输入条件的等价类D1=|a=b+cD1=|a=b+cD2=|b=a+cD2=|b=a+cD3=

23、|c=a+bD3=|c=a+b输入条件的等价类输入条件的等价类D4=|a=b=cD4=|a=b=cD5=|a=b,acD5=|a=b,acD6=|a=c,bcD6=|a=c,bcD7=|b=c,acD7=|b=c,acD8=|ab,ac,bcD8=|ab,ac,bcD1-1=|a=b+cD1-1=|a=b+cD1-2=|ab+cD1-2=|ab+c三角形三角形输入域输入域非三角形非三角形等边等边三角形三角形等腰等腰三角形三角形不等边不等边三角形三角形a=b+cb=a+cc=a+b细化细化355测试用例设计举例等等价价类类测测试试例一:三角形问题例一:三角形问题例一:三角形问题例一:三角形问题(

24、不考虑边长限制)(不考虑边长限制)(不考虑边长限制)(不考虑边长限制)abc预期输出预期输出5 55 55 5等边三角形等边三角形2 22 23 3等腰三角形等腰三角形2 23 32 2等腰三角形等腰三角形3 32 22 2等腰三角形等腰三角形3 34 45 5不等边三角形不等边三角形4 41 12 2非三角形非三角形3 31 12 2非三角形非三角形1 14 42 2非三角形非三角形1 13 32 2非三角形非三角形1 14 42 2非三角形非三角形1 12 23 3非三角形非三角形弱一般等价类测试用例弱一般等价类测试用例三角形三角形输入域输入域非三角形非三角形等边三角形等腰三角形不等边三角

25、形a=b+cb=a+cc=a+b在每个等价类中取值时,在每个等价类中取值时,应取应取norm值值36等价类测试等价类测试捉虫实践捉虫实践3:第二日问题:第二日问题针对个体输入域针对个体输入域针对整体输入域针对整体输入域测试分析测试分析37等价类测试等价类测试第一次测试尝试第一次测试尝试等价划分等价划分38等价类测试等价类测试第一次测试尝试第一次测试尝试无效等价类的测试用例无效等价类的测试用例39等价类测试等价类测试第一次测试尝试第一次测试尝试有效等价类的测试用例有效等价类的测试用例40等价类测试等价类测试第二次测试尝试第二次测试尝试等价划分等价划分41等价类测试等价类测试第二次测试尝试第二次测

26、试尝试有效等价类的测试用例有效等价类的测试用例42等价类测试等价类测试第二次测试尝试第二次测试尝试有效等价类的测试用例(续)有效等价类的测试用例(续)43等价类测试等价类测试第二次测试尝试第二次测试尝试独立性假设导致的冗余独立性假设导致的冗余44等价类测试等价类测试针对整体输入域针对整体输入域45等价类测试等价类测试针对整体输入域针对整体输入域46等价类测试等价类测试针对输出域的等价类测试针对输出域的等价类测试选择合适的输出域来划分等价类选择合适的输出域来划分等价类针对选定的输出域划分等价类针对选定的输出域划分等价类根据划分的等价类设计测试用例根据划分的等价类设计测试用例475测试用例设计举例

27、等等价价类类测测试试例一:三角形问题例一:三角形问题例一:三角形问题例一:三角形问题(不考虑边长限制)(不考虑边长限制)(不考虑边长限制)(不考虑边长限制)输出值域测试输出值域测试输出的等价类输出的等价类R1=|R1=|有三条边有三条边a,b,ca,b,c的等边三角形的等边三角形 R2=|R2=|有三条边有三条边a,b,ca,b,c的等腰三角形的等腰三角形 R3=|R3=|有三条边有三条边a,b,ca,b,c的不等边三角形的不等边三角形 R4=|R4=|三条边三条边a,b,ca,b,c不构成三角形不构成三角形 abc预期输出预期输出5 55 55 5等边三角形等边三角形2 22 23 3等腰三

28、角形等腰三角形3 34 45 5不等边三角形不等边三角形4 41 12 2非构成三角形非构成三角形弱一般等价类测试用例弱一般等价类测试用例48等价类测试等价类测试捉虫实践捉虫实践4:佣金问题:佣金问题输出域的选择输出域的选择销售额?佣金?销售额?佣金?等价划分和测试用例设计等价划分和测试用例设计49等价类测试等价类测试等价划分和测试用例设计等价划分和测试用例设计505测试用例设计举例等等价价类类测测试试例一:三角形问题例一:三角形问题例一:三角形问题例一:三角形问题(考虑边长限制)(考虑边长限制)(考虑边长限制)(考虑边长限制)abc预期输出预期输出-1-15 55 5a a取值无效取值无效5

29、 5-1-15 5b b取值无效取值无效5 55 5-1-1c c取值无效取值无效2012015 55 5a a取值无效取值无效5 52012015 5b b取值无效取值无效5 55 5201201c c取值无效取值无效弱健壮等价类测试用例(补充)弱健壮等价类测试用例(补充)abc预期输出预期输出-1-15 55 5a a取值无效取值无效5 5-1-15 5b b取值无效取值无效5 55 5-1-1c c取值无效取值无效-1-1-1-15 5a,ba,b取值无效取值无效5 5-1-1-1-1b,cb,c取值无效取值无效-1-15 5-1-1a,ca,c取值无效取值无效-1-1-1-1-1-1a

30、,c,ba,c,b取值无效取值无效强健壮等价类测试用例(补充)强健壮等价类测试用例(补充)515测试用例设计举例等等价价类类测测试试例二:例二:例二:例二:NextDateNextDate输入定义域测试输入定义域测试输入条件的有效等价类输入条件的有效等价类M1=M1=月份月份|1=|1=月月=12=12D1=D1=日期日期|1=|1=日期日期=31=31Y1=Y1=年年|1812=|1812=年年=2012=2012M2=M2=月份月份| |月月11212D2=D2=日期日期| |日日13131Y2=Y2=年年| |年年181220122012测试用例总数:测试用例总数: (个)(个)弱一般弱

31、一般强一般强一般弱健壮弱健壮 强健壮强健壮1 11 17 72727输入条件的无效等价类输入条件的无效等价类525测试用例设计举例等等价价类类测测试试例二:例二:NextDatemonthdayyear预期输出预期输出6 615151912191219121912年年6 6月月1616日日弱一般弱一般/强一般等价类测试用例强一般等价类测试用例 abcdx2x1测试用例总数:测试用例总数: 个个1535测试用例设计举例等等价价类类测测试试例二:例二:NextDatemonthmonth daydayyearyear预期输出预期输出6 6151519121912 19121912年年6 6月月16

32、16日日-1-1151519121912月份无效月份无效1313151519121912月份无效月份无效6 6-1-119121912日期无效日期无效6 6323220122012日期无效日期无效6 6151518111811年无效年无效6 6151520132013年无效年无效弱健壮等价类测试用例弱健壮等价类测试用例monthmonth daydayyearyear预期输出预期输出-1-1151519121912月份无效月份无效6 6-1-119121912日期无效日期无效6 6151518111811年无效年无效-1-1-1-119121912 月份、日期无效月份、日期无效6 6-1-11

33、8111811日期、年无效日期、年无效-1-1151518111811月份、年无效月份、年无效-1-1-1-118111811月份、日期和年月份、日期和年无效无效强健壮等价类测试用例(部分)强健壮等价类测试用例(部分)测试用例总数:测试用例总数: 个个7测试用例总数:测试用例总数: 个个27545测试用例设计举例等等价价类类测测试试例二:例二:NextDate输入条件的有效等价类输入条件的有效等价类M1=M1=月份月份|1=|1=月月=12=12D1=D1=日期日期|1=|1=日期日期=31=31Y1=Y1=年年|1812=|1812=年年=2012=2012输入条件的等价类输入条件的等价类M

34、1=M1=月份月份| |每月每月3131天天 M2=M2=月份月份| |每月每月3030天天 M3=M3=月份月份| |此月为此月为2 2月月 D1=D1=日期日期|1=|1=日期日期=28=28D2=D2=日期日期| |日期日期=29=29D3=D3=日期日期| |日期日期=30=30D4=D4=日期日期| |日期日期=31=31Y1=Y1=年年| |年年=2000=2000 Y2=Y2=年年| |年是闰年年是闰年 Y3=Y3=年年| |年是平年年是平年 M1=M1=月份月份| |每月每月3131天,天,1212月除外月除外 M4=M4=月份月份| |此月为此月为1212月月 Y1=Y1=年

35、年| |年年是闰年是闰年 测试用例总数:(个)测试用例总数:(个)弱一般弱一般强一般强一般弱健壮弱健壮 强健壮强健壮4 436361010150150D1=D1=日期日期|1=|1=日期日期=27=27D5=D5=日期日期| |日期日期=28=282 2月?月?闰年?闰年?结合特殊值测试。结合特殊值测试。55等价类测试原因原因等价类划分的步骤等价类划分的步骤确定等价类的一般原则确定等价类的一般原则测试用例的设计测试用例的设计讨论讨论等价类和划分等价类和划分566讨论等等价价类类测测试试指导方针指导方针q 等价类测试的弱形式不如对应的强形式的测试全面等价类测试的弱形式不如对应的强形式的测试全面q

36、 若错误条件非常重要,可进行健壮形式的测试若错误条件非常重要,可进行健壮形式的测试q 若输入数据以离散值区间和集合定义,则应进行等若输入数据以离散值区间和集合定义,则应进行等价类测试。并且也适用于若变量值越界系统就会出现价类测试。并且也适用于若变量值越界系统就会出现故障的系统故障的系统q 通过结合边界值测试,等价类测试可得到加强通过结合边界值测试,等价类测试可得到加强576讨论等等价价类类测测试试q 若程序函数很复杂,则等价类测试是被指示的,这时若程序函数很复杂,则等价类测试是被指示的,这时函数的复杂性可帮助标识有用的等价类(函数的复杂性可帮助标识有用的等价类(NextDate)q 强等价类测

37、试假设变量是独立的,相应的测试用例相强等价类测试假设变量是独立的,相应的测试用例相乘会引起冗余问题,而若存在依赖关系,则常常会生成乘会引起冗余问题,而若存在依赖关系,则常常会生成“错误错误”测试用例(测试用例(NextDate)q 在发现在发现“合适合适”的等价关系之前,可能需多次尝试,的等价关系之前,可能需多次尝试,在其它情况下,存在在其它情况下,存在“明显明显”或或“自然自然”等价关系,若等价关系,若不能肯定,最好对任何合理的实现进行再次预测不能肯定,最好对任何合理的实现进行再次预测q 在强和弱形式的等价类测试之间的差别,有助于区分在强和弱形式的等价类测试之间的差别,有助于区分累计测试和回归测试累计测试和回归测试指导方针指导方针58试验一下试验一下函数void vTest2(int x, int y)其中:x的取值范围为:0x100y的取值范围为:10y20 59试验一下试验一下某保险公司汽车保险费用计算方式:如果第一次投保,则按照1000元收取;如果不是第一次投保且投保次数小于4次,则投保费用是900元;如果投保次数大于等于4次,则每次的投保费用是上次的90。如果投保时发现以前发生过交通事故,则每发生一次事故,保险费用加500元,如果超过3次事故,则拒绝该笔交易。60 谢谢!61

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号