第2章-黑盒测试等价类划分解析课件

上传人:痛*** 文档编号:241627282 上传时间:2024-07-11 格式:PPT 页数:77 大小:3.05MB
返回 下载 相关 举报
第2章-黑盒测试等价类划分解析课件_第1页
第1页 / 共77页
第2章-黑盒测试等价类划分解析课件_第2页
第2页 / 共77页
第2章-黑盒测试等价类划分解析课件_第3页
第3页 / 共77页
点击查看更多>>
资源描述
2024/7/111第二章软件测试用例的设计方法2024/7/112Outlinen一.黑盒测试及其测试用例设计方法n二.白盒测试及其测试用例设计方法n如果没有测试用例测试人员将会如何测试?2024/7/113随机测试存在的问题n不知道是否较全面的测试了所有功能n测试的覆盖率无法衡量n对新版本的重复测试很难实施n无法对测试质量进行有效评估n无法形成有效的知识积累n.2024/7/114测试用例的概念n如何以最少的人力、资源投入,在最短的时间内完成测试,发现软件系统的缺陷,保证软件的优良品质,是软件公司探索和追求的目标n测试用例是测试工作的指导,是软件测试的必须遵守的准则,更是软件测试质量稳定的根本保障2024/7/115n测试用例(Test Case)通俗一点来讲就是编写(编制)一组前提条件、输入、执行条件、预期结果以完成对某个特定需求或目标测试的数据,体现测试方案、方法、技术和策略的文档。n测试用例是将整个测试的执行过程作一个科学有效的合理组织规划。主要目的是将软件测试的执行过程形成那个一个可管理的模式;同时测试用例也是将测试详细具体化的有效手段之一。2024/7/116测试用例的作用n(1)指导测试的实施n(2)规划测试数据的准备n(3)编写测试脚本“规格说明书”n(4)评估测试结果的度量基准n(5)分析缺陷标准2024/7/117设计测试用例所需的文档资料设计测试用例所需的文档资料设计测试用例所需要的文档资料包括:软件需求说明书;软件设计说明书;软件测试需求说明书;成熟的测试用例2024/7/118测试用例主要包括哪些内容测试用例主要包括哪些内容完整的测试用例通常包括:测试用例的编号;测试日期;测试用例设计人员和测试人员;测试修订历史;测试准备;测试描述;测试环境;输入数据/动作;测试执行;测试预期的结果。测试的实际结果;2024/7/119测试用例的设计方法测试用例的设计方法测试用例是整个测试工作中的重中之重,测试的一般流程包括制定测试计划、编写测试用例、执行测试、跟踪测试缺陷、编写测试报告等。测试计划、大纲制定后就需要进行测试用例的设计,之后所有的工作全都是在测试用例的基础上展开的。2024/7/1110用例的设计应注意到一下几点问题:用例应该从系统的最高级别向最低级别逐一展开;每个测试用例都应单独放在文档中;系统中的所有功能都应该对应到用例中;每个用例都应该依据需求进行设计;用例的设计人员最好是具有丰富的经验测试人 员。2024/7/1111黑盒测试用例的设计方法黑盒测试用例的设计方法(1)黑盒测试用例设计技术如下:等价类划分;边界值分析;错误推测;因果图。(2)采用黑盒测试技术设计用例的主要目的是:检查功能是否实现或遗漏;检查人机交互界面是否出错;数据库读取、更新操作出错;性能特性是否得到满足。2024/7/1112白盒测试用例的设计方法白盒测试用例的设计方法(1)白盒测试用例的设计技术如下:逻辑覆盖;基本路径测试。(2)采用白盒测试技术设计用例的目的主要是:每个模块中的所有独立路径至少被执行一次;所有的逻辑值必须测试真、假两个分支;在边界值内和可操作范围至少循环一次;检查数据的内部结构保证其有效的实现预定功能。2024/7/1113综合设计方法综合设计方法白盒和黑盒测试用例的设计方法,每一个测试用例设计方法给出了有用测试用例的一个特殊的集合,但没有一个可以贡献完整的测试用例的集合。在实际项目运作设计时常常共同使用各种测试用例设计方法进行用例的设计。这里我们主要是介绍如何综合使用这些方法来设计测试用例。实际操作设计测试用例一般是先黑后白,即:先用黑盒技术设计一些用例,再用白盒技术做一些补充用例。2024/7/1114下面是综合设计方法的建议性设计步骤:如果规格说明书中包含输入条件,用因果图法进行设计测试用例。如果源码中遇到输入输出边界,用边界值分析法进行设计测试用例,这是输入输出边界的分析。边界值分析产生一组附加的测试条件,但是大多数或全部这些条件都可以组合到因果测试中。2024/7/1115为输入和输出识别有效和无效等价类。使用错误推测方法来增加测试用例。用逻辑覆盖方法来检查程序的逻辑,使用判定覆盖、条件覆盖、判定/条件覆盖和多条件覆盖准则(最完整),如果满足此方法是不可能,那么设计足够的测试用例去让此方法被满足2024/7/1116测试用例设计时的基本原则:利用成熟的测试用例设计方法来指导设计;测试用例的正确性;测试用例的代表性;测试结果的可判定性;测试结果的可重现性;足够详细、准确和清晰的步骤;利用测试用例文档编写测试用例时必须符合内部的规范要求。2024/7/1117设计测试用例时需要注意的问题:不能把测试用例设计等同于测试输入数据的设计;不能追求测试用例设计的一步到位;不能将多个测试用例混在一个用例中;不能由没有经验的人员设计测试用例。2024/7/11182024/7/1119一.黑盒测试n黑盒测试n又称为功能性测试或数据驱动测试。2024/7/1120一.黑盒测试n黑盒测试的技术方法主要包括:n n等价类划分法等价类划分法n n边界值分析法边界值分析法n n比较测试法比较测试法n n因果图法因果图法n n决策表法等决策表法等 n如果你打算测试一个计算器程序的功能,你认为需要进行多少次输入?2024/7/1123p结论是不计其数1.整型:从 1+1 到 999999999999999999999999999999+9999999999999999999999999999992.小数:1.0+0.1,1.0+0.2等等3.键盘上的任何一种组合4.为乘法和除法运算重复上面的操作2024/7/11242.等价类划分法n2.1概述n等价类划分方法是一种最为典型的黑盒测试方法。n使用这一方法时,完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。2024/7/11252.等价类划分法n等价类划分方法把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据做为测试用例。n使用这一方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。2024/7/11272.等价类划分法n等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。测试某等价类的代表值就等价于对这一类其它值的测试。1.等价类中的各个元素具有相同的属性2.(被划分集合)各个等价类之间不会存在相同的元素,它们的并集是被划分集合的全集2024/7/11282.等价类划分法n等价类的划分有两种不同的情况:有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。划分等价类划分等价类 确定测试用例确定测试用例2024/7/11322.等价类划分法n2.2等价类划分的原则n(1)如果输入条件规定了取值范围,或值的个数,则可以确立一个有效等价类和两个无效等价类。2024/7/11332.等价类划分法n例如,在程序的规格说明中,对输入条件有一句话:n“项数可以从1到999”n则有效等价类是“1项数999”n两个无效等价类是“项数1”或“项n数999”。在数轴上表示成:2024/7/11342.等价类划分法(2)如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可确立一个有效等价类和一个无效等价类。例如,在例如,在Pascal语言中对变量标识符规定语言中对变量标识符规定为为“以字母打头的以字母打头的串串”。那么所有以。那么所有以字母打头的构成有效等价类,而不在此集字母打头的构成有效等价类,而不在此集合内(不以字母打头)的归于无效等价类。合内(不以字母打头)的归于无效等价类。2024/7/11352.等价类划分法n n(3)如果输入条件是一个布尔量,则可以如果输入条件是一个布尔量,则可以确定一个有效等价类和一个无效等价类。确定一个有效等价类和一个无效等价类。n n(4)如果规定了输入数据的一组值,而且如果规定了输入数据的一组值,而且程序要对每个输入值分别进行处理。程序要对每个输入值分别进行处理。这时这时可为可为 每一个输入值确立一个有效等价类,每一个输入值确立一个有效等价类,此外针对这组值确立一个无效等价类,它此外针对这组值确立一个无效等价类,它是所有不允许的输入值的集合。是所有不允许的输入值的集合。2024/7/11362.等价类划分法n例如,在教师上岗方案中规定对教授、副教授、讲师和助教分别计算分数,做相应的处理。因此可以确定4个有效等价类为教授、副教授、讲师和助教,一个无效等价类,它是所有不符合以上身分的人员的输入值的集合。2024/7/11372.等价类划分法n n(5)如果如果规定了定了输入数据必入数据必须遵守的遵守的规则,则可以确立一个有效等价可以确立一个有效等价类(符合(符合规则)和若干个无效等价)和若干个无效等价类(从不同角度(从不同角度违反反规则)。)。2024/7/11382.等价类划分法n2.3确定测试用例n确立了等价类后,建立等价类表,列出所有划分的等价类.2024/7/11392.等价类划分法n根据划分的等价类,按以下原则选择测试用例:n(1)为每一个等价类规定一个唯一编号;n(2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;n(3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。一个字段nQQ账号:6-10位自然数一个页面2024/7/11441.问题描述n(1).三角形问题n n输入三个整数输入三个整数a,b,c,a,b,c,分别作为三角形分别作为三角形的三条边的三条边,现通过程序判断三条边构成现通过程序判断三条边构成三角形的类型为三角形的类型为:n n一般三角形一般三角形n n等边三角形等边三角形n n等腰三角形等腰三角形n n不构成三角形不构成三角形2024/7/11451.问题描述n现在要求输入的三个整数必须满足以下条件:n条件1:0an条件2:0bn条件3:0cn条件4:ab+cn条件5:ba+cn条件6:c0a0b0b0c0c0a+bca+bcb+cab+caa+cba+cb(1)(2)(3)(4)(5)(6)a0b 0c 0a+b cb+c aa+c b(7)(8)(9)(10)(11)(12)等腰三角形?a=ba=bb=cb=cc=ac=a(13)(14)(15)ab&b c&c a(16)等边三角形?a=b a=b&b=c&c=a&b=c&c=a(17)ab bc ca(18)(19)(20)2024/7/1148编号编号编号编号a,b,ca,b,ca,b,ca,b,c覆盖等价类覆盖等价类覆盖等价类覆盖等价类期望输出期望输出期望输出期望输出13,4,5(1)-(6)一般三角形一般三角形一般三角形一般三角形2340,1,21,0,21,2,0(7)(8)(9)不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形5671,2,31,3,23,1,2(10)(11)(12)不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形不构成三角形89103,3,43,4,43,4,3(1)-(6),(13)(1)-(6),(14)(1)-(6),(15)等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形等腰三角形113,4,5(1)-(6),(16)非等腰三角形非等腰三角形非等腰三角形非等腰三角形123,3,3(1)-(6),(17)等边三角形等边三角形等边三角形等边三角形1314153,4,43,4,33,3,4(1)-(6),(14),(18)(1)-(6),(14),(19)(1)-(6),(14),(20)非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形非等边三角形等价类方法的补充说明2024/7/1149p弱一般等价类n设计若干测试用例,每个测试用例应尽可能多地覆盖尚未覆盖的被测变量的有效等价类并且每个被测变量的有效等价类应至少出现一次n测试用例个数为:各个被测变量中的最大有效等价类个数p强一般等价类n设计若干测试用例,使其覆盖所有被测变量有效等价类的组合n测试用例个数为:各个被测变量有效等价类数2024/7/1150p弱健壮等价类n设计若干测试用例,每个测试用例应尽可能多地覆盖尚未覆盖的有效等价类,对于无效等价类,每个测试用例只考虑一个被测变量的无效等价类n测试用例个数为:各个被测变量中的最大有效等价类个数+各个被测变量的无效等价类数p强健壮等价类n设计若干测试用例,使其覆盖所有被测变量的有效等价类和无效等价类的组合n测试用例个数为:各个被测变量的(有效等价类数+无效等价类数)2024/7/11512.等价类划分法n2.4常见的等价类划分测试形式n问题:某函数F有两个变量x1,x2.要求两输入变量的取值范围如下:nax1d,区间为a,b,(b,c),c,dnex2g,区间为e,f),f,gnx1,x2x1,x2的无效区间为的无效区间为:nx1dx1d;x2gx2g2024/7/11522.等价类划分法n(1)弱一般等价类测试n特点:不考虑无效数据,测试用例使用每个等价类中的一个值。abcdefgx2x12024/7/11532.等价类划分法n(2)强一般等价类测试n特点:每一个有效等价类要选择至少一个测试用例abcdefgx2x12024/7/11542.等价类划分方法n(3)弱健壮等价类测试n对于有效输入:使用每个有效类的一个值n对于无效输入:测试用例只使用一个无效值,其余值都是有效的abcdefgx2x12024/7/11552.等价类划分方法n(4)强健壮等价类测试n每个有效等价类和无效等价类都至少要选择一个测试用例abcdefgx2x12024/7/11562.等价类划分方法划分法特点弱一般等价类测试弱一般等价类测试 不考虑无效等价类,选取的测试用例只需覆不考虑无效等价类,选取的测试用例只需覆不考虑无效等价类,选取的测试用例只需覆不考虑无效等价类,选取的测试用例只需覆盖到有效等价类。盖到有效等价类。盖到有效等价类。盖到有效等价类。强一般等价类测试强一般等价类测试 不考虑无效等价类,选取测试用例时,要根不考虑无效等价类,选取测试用例时,要根不考虑无效等价类,选取测试用例时,要根不考虑无效等价类,选取测试用例时,要根据等价类笛卡儿积,各有效区间的组合都要据等价类笛卡儿积,各有效区间的组合都要据等价类笛卡儿积,各有效区间的组合都要据等价类笛卡儿积,各有效区间的组合都要覆盖到覆盖到覆盖到覆盖到弱健壮等价类测试弱健壮等价类测试 基于单缺陷假设,考虑无效等价类,选取的基于单缺陷假设,考虑无效等价类,选取的基于单缺陷假设,考虑无效等价类,选取的基于单缺陷假设,考虑无效等价类,选取的测试用例要覆盖每一个有效等价类和无效等测试用例要覆盖每一个有效等价类和无效等测试用例要覆盖每一个有效等价类和无效等测试用例要覆盖每一个有效等价类和无效等价类,但时不能同时覆盖两个无效等价类。价类,但时不能同时覆盖两个无效等价类。价类,但时不能同时覆盖两个无效等价类。价类,但时不能同时覆盖两个无效等价类。强健壮等价类测试强健壮等价类测试 每个无效等价类和有效等价类的组合都要覆每个无效等价类和有效等价类的组合都要覆每个无效等价类和有效等价类的组合都要覆每个无效等价类和有效等价类的组合都要覆盖到,考虑所有的有效和无效情况。盖到,考虑所有的有效和无效情况。盖到,考虑所有的有效和无效情况。盖到,考虑所有的有效和无效情况。2024/7/11572.等价类划分方法n2.5三角形问题的等价类划分方法n可以使用输出标识如下所示的输出等价类:nR1=:有三条边a,b,c的等边三角形nR2=:有三条边a,b,c的等腰三角形nR3=:有三条边a,b,c的不等边三角形nR4=:三条边a,b,c不能构成三角形2024/7/11582.等价类划分方法编号编号编号编号a,b,ca,b,ca,b,ca,b,c期望输出期望输出期望输出期望输出WN1WN2WN3WN4523452415352等边三角形等边三角形等边三角形等边三角形等腰三角形等腰三角形等腰三角形等腰三角形不等边三角形不等边三角形不等边三角形不等边三角形不构成三角形不构成三角形不构成三角形不构成三角形n弱一般等价类测试用例为:2024/7/11592.等价类划分方法n弱健壮等价类测试用例:编号编号编号编号a,b,ca,b,ca,b,ca,b,c期望输出期望输出期望输出期望输出WR1WR1WR2WR2WR3WR3WR4WR4WR5WR5WR6WR6-155101555-155101555-155101a a a a不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内b b b b不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内c c c c不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内a a a a不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内b b b b不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内c c c c不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内2024/7/11602.等价类划分方法n强健壮等价类测试用例(部分):编号编号编号编号a,b,ca,b,ca,b,ca,b,c期望输出期望输出期望输出期望输出SR1SR2SR3SR4SR5SR6SR7-155-15-1-15-15-1-15-155-15-1-1-1a a a a不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内b b b b不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内c c c c不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内a,ba,ba,ba,b不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内b,cb,cb,cb,c不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内c,ac,ac,ac,a不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内a,b,ca,b,ca,b,ca,b,c不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内不在允许的取值范围内2024/7/11611.问题描述n(2).NextDate函数n nNextDateNextDate函数有三个函数有三个函数有三个函数有三个变变量量量量month,day,yearmonth,day,year的函数,的函数,的函数,的函数,输输出出出出为输为输入日期下一天的日期。如:入日期下一天的日期。如:入日期下一天的日期。如:入日期下一天的日期。如:输输入入入入为为20072007年年年年7 7月月月月1919日,日,日,日,输输出出出出为为20072007年年年年7 7月月月月2020日。要求三个日。要求三个日。要求三个日。要求三个变变量都量都量都量都为为整数,且整数,且整数,且整数,且满满足:足:足:足:n条件:1month12n条件2:1day31n条件3:1912year20502024/7/11622.等价类划分方法n2.6NextDate函数的等价类划分方法nYear Month DayYear Month Day的有效值区间定义如下:的有效值区间定义如下:nM1=month:1month12nD1=day:1day31nY1=year:1912year20502024/7/11632.等价类划分方法n n无效等价类是:无效等价类是:无效等价类是:无效等价类是:nM2=month:month12nD2=day:day31nY2=year:year20502024/7/11642.等价类划分方法测试用例monthdayyear预期输出Test161520052005.6.16NextDate函数的弱一般等价类测试用例强一般等价类测试与弱一般等价类测试用例强一般等价类测试与弱一般等价类测试用例相同相同2024/7/1165NextDate函数的弱健壮等价类测试用例测试用例monthdayyear预期输出Test1Test1Test2Test2Test3Test3Test4Test4Test5Test5Test6Test6Test7Test76 6-1-113136 66 66 66 6151515151515-1-1323215151515191219122005200520052005200520052005200519111911205120511912.6.161912.6.16monthmonth不在有效值内不在有效值内monthmonth不在有效值内不在有效值内dayday不在有效值内不在有效值内dayday不在有效值内不在有效值内yearyear不在有效值内不在有效值内yearyear不在有效值内不在有效值内2024/7/1166NextDate函数的强健壮等价类测试用例(部分)测试用例monthdayyear预期输出Test1Test1Test2Test2Test3Test3Test4Test4Test5Test5Test6Test6Test7Test7-1-16 66 6-1-16 6-1-1-1-11515-1-11515-1-1-1-11515-1-119181918191819181911191120052005191119111911191119111911monthmonth不在有效值内不在有效值内dayday不在有效值内不在有效值内yearyear不在有效值内不在有效值内month,daymonth,day不在有效值内不在有效值内day,yearday,year不在有效值内不在有效值内month,yearmonth,year不在有效值内不在有效值内month,day,yearmonth,day,year不在有效值内不在有效值内2024/7/11672.等价类划分方法n考虑对输入日期入日期的处理:nM1=month:month有30天nM2=month:month有31天nM3=month:month是2月nD1=day:1day28nD2=day:day=29nD3=day:day=30nD4=day:day=31nY1=year:year=2000nY2=year:year是闰年nY3=year:year是平年2024/7/1168弱一般等价类测试用例测试用例monthdayyear预期输出Test1Test1Test2Test2Test3Test3Test4Test46 67 72 26 61515292930303131200020001996199620022002200020002000.6.162000.6.161996.7.301996.7.302002.2.312002.2.31不可能的日期不可能的日期不可能的日期不可能的日期2000.7.12000.7.1(不可能的输入日期不可能的输入日期不可能的输入日期不可能的输入日期)2024/7/1169强一般等价类测试用例测试用例monthdayyear预期输出Test1Test1Test2Test2Test3Test3Test4Test4Test5Test5Test6Test6Test7Test7Test8Test8Test9Test9Test10Test10Test11Test11Test12Test12Test13Test13Test14Test14Test15Test156 66 66 66 66 66 66 66 66 66 66 66 67 77 77 71515151514142929292929293030303030303131313131311515141414142000200019961996200220022000200019961996200220022000200019961996200220022000200019961996200220022000200019961996200220022000.6.162000.6.161996.6.161996.6.162002.6.152002.6.152000.6.302000.6.301996.6.301996.6.302002.6.302002.6.302000.6.31(2000.6.31(不可能的日期不可能的日期)1996.6.31(1996.6.31(不可能的日期不可能的日期)2002.7.1 2002.7.1 2000.7.1(2000.7.1(无效输入无效输入)1996.7.1(1996.7.1(无效输入无效输入)2002.7.1(2002.7.1(无效输入无效输入)2000.7.162000.7.161996.7.151996.7.152002.7.152002.7.152024/7/1170测试用例monthdayyear预期输出Test16Test16Test17Test17Test18Test18Test19Test19Test20Test20Test21Test21Test22Test22Test23Test23Test24Test24Test25Test25Test26Test26Test27Test27Test28Test28Test29Test29Test30Test307 77 77 77 77 77 77 77 77 72 22 22 22 22 22 22929292929293030303030303131313131311414141414142929292929292000200019961996200220022000200019961996200220022000200019961996200220022000200019961996200220022000200019961996200220022000.7.302000.7.301996.7.301996.7.302002.7.302002.7.302000.7.312000.7.311996.7.311996.7.312004.7.312004.7.312000.8.12000.8.11996.8.11996.8.12002.8.12002.8.12000.2.152000.2.151996.2.151996.2.152002.2.152002.2.152000.3.1(2000.3.1(无效的输入日期无效的输入日期)1996.3.11996.3.12002.3.1 2002.3.1 不可能的日期不可能的日期2024/7/1171测试用例monthdayyear预期输出Test31Test31Test32Test32Test33Test33Test34Test34Test35Test35Test36Test362 22 22 26 66 66 63030303030303131313131312000200019961996200220022000200019961996200220022000.3.12000.3.1无效输入日期无效输入日期1996.3.11996.3.1无效输入日期无效输入日期2002.3.12002.3.1无效输入日期无效输入日期2000.7.12000.7.1无效输入日期无效输入日期1996.7.11996.7.1无效输入日期无效输入日期2002.7.12002.7.1无效输入日期无效输入日期2024/7/11722.等价类划分方法n2.7等价类测试的指导方针n(1)如果实现的语言是强类型语言(无效值输入会引起系统运行时出错),则没有必要使用健壮等价类测试.n(2)如果错误输入检查非常重要,则应进行健壮等价类测试.n(3)如果输入数据以离散区间或集合的形式定义,则等价类测试是合适的n(4)在发现合适的等价关系之前,可能需要多次尝试.2024/7/1173n用等价类划分法测试为保险公司计算保费费率的程序。某保险公司的人寿保险的保费计算方式为:投保额*保险费率,其中的保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下:n对程序中各个输入条件的要求如下:年龄是一位或两位非零整数,值的有效范围为199;性别是一位英文字符,有效取值只能为M(表示男性)或F(表示女性);婚姻的有效取值只能为已婚或未婚;抚养人数的有效取值可以是空白或一位非零整数(19)。(1)分析程序规格说明中给出和隐含的对输入条件的要求,列出等价类表(包括有效等价类和无效等价类)。n年龄:一位或两位非零整数,值的有效范围为199n性别:一位英文字符,只能取值M或Fn婚姻:字符,只能取值已婚或未婚n抚养人数:空白或一位非零整数(19)n点数:一位或两位非零整数,值的范围为199(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例。输入条件输入条件有效等价类有效等价类编号编号无效等价类无效等价类编号编号年龄年龄20392039岁岁1 140594059岁岁2 2119119岁岁60996099岁岁3 3小于小于1 11212大于大于99991313性别性别单个英文字符单个英文字符4 4非英文字符非英文字符1414非单个英文字符非单个英文字符1515M M5 5除除M M和和F F之外的之外的其它单个字符其它单个字符1616F F6 6婚姻婚姻已婚已婚7 7除除已婚已婚和和未婚未婚之外的其它字符之外的其它字符1717未婚未婚8 8抚养人数抚养人数空白空白9 9除空白和数字之外除空白和数字之外的其它字符的其它字符18181616人人1010小于小于1 119196969人人1111大于大于9 92020测试用例测试用例编号编号输入数据输入数据预期输出预期输出年龄年龄性别性别婚姻婚姻抚养人数抚养人数保险费率保险费率1 12727F F未婚未婚空白空白0.6%0.6%2 25050M M已婚已婚2 20.6%0.6%3 37070F F已婚已婚7 70.1%0.1%4 40 0M M未婚未婚空白空白无法推算无法推算5 5100100F F已婚已婚3 3无法推算无法推算6 69999男男已婚已婚4 4无法推算无法推算7 71 1ChildChild未婚未婚空白空白无法推算无法推算8 84545N N已婚已婚5 5无法推算无法推算9 93838F F离婚离婚1 1无法推算无法推算10106262M M已婚已婚没有没有无法推算无法推算11111818F F未婚未婚0 0无法推算无法推算12124040M M未婚未婚1010无法推算无法推算
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!