精选Ch3功能性测试课件.ppt

上传人(卖家):三亚风情 文档编号:3288624 上传时间:2022-08-17 格式:PPT 页数:111 大小:3.04MB
下载 相关 举报
精选Ch3功能性测试课件.ppt_第1页
第1页 / 共111页
精选Ch3功能性测试课件.ppt_第2页
第2页 / 共111页
精选Ch3功能性测试课件.ppt_第3页
第3页 / 共111页
精选Ch3功能性测试课件.ppt_第4页
第4页 / 共111页
精选Ch3功能性测试课件.ppt_第5页
第5页 / 共111页
点击查看更多>>
资源描述

1、功能性测试内容简介o 边界值测试o 等价类测试o 因果图法o 基于决策表的测试1.边界值分析Boundary Value Analysis1.边界值测试o 边界值分析o 健壮性测试o 最坏情况测试o 特殊值测试o 举例o 随机测试常见的边界值o 对16-bit 的整数而言 32767 和-32768 是边界o 屏幕上光标在最左上、最右下位置o 报表的第一行和最后一行o 数组元素的第一个和最后一个o 循环的第 0 次、第 1 次和倒数第 2 次、最后一次1.1边界值分析o 依据原理:错误更可能出现在输入变量的极值附近o 基本思想:使用在最小值、略高于最小值、正常值、略低于最大值、最大值处输入变量

2、值。o 生成测试用例n使所有变量取正常值,只使一个变量取极值(依据“单缺陷”假设:失效极少是由两个或多个缺陷同时发生引起的)nn个变量函数:1个变量取最小值、略高于最小值、正常值、略低于最大值、最大值,n-1个变量取正常值;对每个变量重复此过程,4n+1个测试用例1.1例如:x1x21.1对边界值分析的说明o 值域取决于变量的性质n 容易确定值域:离散值、有界值n 人工确定值域:三角形问题,最大边长?n 对布尔值无意义(可选决策表)o 边界值分析的局限性n NextDate():2月,闰年1.2健壮性测试o 对边界值分析的扩展x1x21.3最坏情况测试o 当多个变量取极值时会出现什么情况?o

3、生成测试用例:o 对每个变量:首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值5元素集合测试,然后对这些集合进行笛卡尔积计算,生成测试用例o n变量函数的最坏测试情况测试,会产生5n个测试用例1.3两变量函数的最坏情况测试用例x1x21.3两变量函数的健壮最坏情况测试用例x1x21.4特殊值测试o 测试人员依赖经验、领域知识给出特殊值o 特殊值测试特别依赖测试人员的能力o 例如:o NextDate函数:闰年2月28日,2月29日1.5举例(找零钱最佳组合)o 假设商店商品价格X皆不大于100元(整数),若顾客买一件商品,付款Y在100元内,求找给顾客的最少货币张数?o 货币面值

4、:n50元R50n20元R20n10元R10n5元R5n2元R2n1元R1分析输入o X 100o 0 X =100o X 100o X=Y=100o Y X 分析输出o 0=R50=1o 0=R20=2o 0=R10=1o 0=R5=1o 0=R2=2o 0=R1 100nX 100nY=50 找R50n20=S 50 找R20n10=S 20 找R10n5=S 10 找R5n2=S 5 找R2n1=S 100 错误oX=0 错误o0 X 100 错误o0 X=100,Y 100;0X=100;X100;0Y=100;Y=0o思考3:这个等价类划分是否测试充分?漏掉了什么情况?o思考4:如果

5、按照输出结果划分等价类,效果如何?o思考5:应用输入结果的等价类划分测试与边界值分析相比,哪一个更简便,哪一个有效?如何协调?1.6随机测试o 避免出现测试偏见o 方法:使用随机数生成器选取测试用例值o 例如:o a=x=bo x=int(b-a+1)*Rnd+ao Rnd函数生成0,1内的随机数2.等价类划分Equivalence Partitioning2.1等价类测试o 进行完备测试,又避免冗余o 例如:o a=x=d,区间为a,b),b,c),c,do e=y=g,区间为e,f),f,go 包含:n 弱一般等价类测试n 强一般等价类测试n 弱健壮等价类测试n 强健壮等价类测试2.1.1

6、弱一般等价类测试o 根据单缺陷假设:使用每个等价类(区间)的一个值生成测试用例xyadge对称方式2.1.2强一般等价类测试o 根据多缺陷假设:需要等价笛卡尔积的每个元素生成测试用例xyadge2.1.3弱健壮等价类测试/传统等价类测试o 根据单缺陷假设:考虑无效值o 对于有效输入,使用每个有效类的一个值(就像我们在所谓弱一般等价类测试中所做的一样。)o 对于无效输入,测试用例将拥有一个无效值,并保持其余的值都是有效的。xyadge2.1.4强健壮等价类测试o 所有等价类笛卡儿积的每个元素中获得测试用例。xyadge2.2等价类测试用例生成步骤o 选择确定类的等价关系(划分等价类)。n 有效等

7、价类 o 对于程序的需求说明来说是合理的,有意义的输入数据所构成的集合o 利用它可以检验程序是否实现了预期的功能和性能(确认过程)n 无效等价类 o 对于程序的需求说明来说是不合理的,没有意义的输入数据所构成的集合 o 利用它可以检验程序对于无效数据的处理能力(验证过程)o 选择每个等价类中的一组数据标识测试用例。2.2.1确立等价类的原则(1)严格的,可以按照变量来划分有效和无效等价类。o 先按照x来划分有效等价类和无效等价类,然后再按照y来划分有效等价类和无效等价类o 最后再形成相应的测试用例。l x:有效等价类为:A=x=B;无效等价类为:xA和Bx两个无效等价类l y:有效等价类为:C

8、=y=D;无效等价类为:yC和D=1&=50”n 两个无效等价类为“50”2.2.1确立等价类的原则(3)如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类 如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处理,这时要对每一个规定的输入值确立一个有效等价类,而对于这组值之外的所有值确立一个无效等价类 2.2.1确立等价类的原则(4)如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据),例如:n 测试密码域,要求密码必须是数字或字母 n 有效等价类为“密码是数字和字母的组合”(还可以细分)n 无效等

9、价类为“密码包括中文”、“密码包括其它符号”等如果确知已划分的等价类中的各元素在程序中的处理方式不同(例如字母还要区分大小写等),则应进一步划分成更小的等价类 2.2.2将等价类转化成测试用例等价类表等价类测试用例设计o针对是否对无效数据进行测试,可以将等价类测试分为 标准等价类测试和健壮等价类测试。标准等价类测试不考虑无效数据值,测试用例使用 每个等价类中的一个值。健壮等价类测试主要的出发点是考虑了无效等价类。对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个“无效值”,其他值均取“有效值”。健壮等价类测试存在两个问题:(1)需要花费精力定义无效测试用例的期望输出

10、 (2)对强类型的语言没有必要考虑无效的输入,程序可以自己检测。2.3等价类划分实例o 保险费率计算o 三角形o NextDate2.3.1保险费率计算按照输入域划分等价类的例子。o 某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%o 点数的计算是年龄、性别、婚姻、抚养人数所得的点数的总和o 输入:年龄、性别、婚姻、抚养人数o 输出:保险率输入数据说明 年龄20396点40594点99以下59以上、20以下1以上2点性别男5点女3点婚姻已婚3点未婚5点抚养人数1人扣0.5点最多扣3点(四舍

11、五入)第一步:输入和输出变量确认按照输入域划分等价类的例子。o 输入:年龄、性别、婚姻、抚养人数o 输出:保险率o 等价类划分原则:按照输入变量来确认等价类(有效等价类和无效等价类)第二步:等价类划分输入年龄有效等价类2039(6点)(1)4059(4点)(2)6099、119(2点)(3)无效等价类空白(未知)(4)99(未知)(6)包含非数字字符(未知)(7)性别有效等价类男(5点)(8)女(3点)(9)婚姻有效等价类已婚(3点)(10)未婚(5点)(11)是否可以有更多无效等价类?第二步:等价类划分输入抚养人数有效等价类12(1点)(12)34(2点)(13)4(3点)(14)无效等价类

12、空白(未知)(15)=10点(0.6%)(18)10点(0.1%)(19)第三步:设计测试用例按照输入域划分等价类的例子。1、设计测试用例,尽可能的覆盖尚未覆盖的有效等价类。(1)(8)(10)(12)(2)(9)(11)(13)(3)(8)(10)(14)2、设计测试用俐,使得每一个新设计的测试用例只包含一个无效等价类,其他的选择有效等价类。(4)(8)(10)(12)(5)(9)(11)(13)(6)(8)(10)(14)(7)(8)(10)(14)(1)(8)(10)(15)(2)(9)(11)(16)(3)(8)(10)(16)说明:在设计无效部分的测试用例的时候,有效等价类部分,可以

13、任意选择。第四步:选取测试用例用例编号输入输出备注年龄性别婚姻抚养人数保险率122男已婚10.6%(1)(8)(10)(12)(18)13点245女未婚40.1%(2)(9)(11)(13)(19)8点365男已婚80.1%(3)(8)(10)(14)(19)7点4空白男未婚1错误(4)5-1男未婚2错误(5)6122男未婚8错误(6)7“tt1”女已婚1错误(7)822女已婚空白错误(15)922女已婚-1错误(16)1022女未婚“ct2”错误(17)思考1、是否可以按照输出域来设计测试用例?2、按照输入域设计的结果和按照输出域设计的结果会有何不同?2.3.2三角形问题的等价类测试用例第一

14、步:划分等价类第一步:划分等价类 R1=:有三条边:有三条边a、b和和c的等边三角形的等边三角形R2=:有三条边:有三条边a、b和和c的等腰三角形的等腰三角形R3=:有三条边:有三条边a、b和和c的不等边三角形的不等边三角形R4=:三条边:三条边a、b和和c不构成三角形不构成三角形 第二步:选取测试用例第二步:选取测试用例 4 4个弱一般等价类测试用例个弱一般等价类测试用例测试用例测试用例a ab bc c预期输出预期输出WN1WN15 55 55 5等边三角形等边三角形WN2WN22 22 23 3等腰三角形等腰三角形WN3WN33 34 45 5三角形三角形WN4WN44 41 12 2非

15、三角形非三角形三角形问题的弱健壮等价类测试用例弱健壮等价类测试(WN+WR)测试用例 abc预期输出WR1-155a取值不在允许的范围内WR25-15b取值不在允许的范围内WR355-1c取值不在允许的范围内WR420155a取值不在允许的范围内WR552015b取值不在允许的范围内WR655201c取值不在允许的范围内三角形问题的强健壮等价类测试用例强健壮等价类测试(WN+WR+SR+)测试用例 abc预期输出SR1-1-15a、b取值不在允许的范围内SR25-1-1b、c取值不在允许的范围内SR3-15-1a、c取值不在允许的范围内SR4-1-1-1a、b、c取值不在允许的范围内三角形问题

16、的另一种等价类划分 D1 D1=a:a=b=c a=b=c D2 D2=ac:a a =b b,ac D3 D3=ac:a a =c c,ab D4 D4=ac:c c =b b,ac D5 D5=ac:b b a c D6 D6=ac:a ab+c b+c D7 D7=ac:b ba+C a+C D8 D8=ac:c ca+b a+b 2.3.3NextDate函数的等价类测试用例确定等价类:确定等价类:无效等价类:无效等价类:M2=月份:月份月份:月份12D2=日期:日期日期:日期31Y2=年:年年:年2012有效等价类:有效等价类:M1=月份:月份:1月份月份12 D1=日期:日期:1日

17、期日期31Y1=年:年:1812年年2012 NextDate函数的弱一般等价类测试用例用例ID月份日期年预期输出WN1,SN161519126/16/1912NextDate函数的弱健壮等价类测试用例用例ID月份日期年预期输出WR161519126/16/1912WR2-1151912无效输入WR313151912无效输入WR46-11912无效输入WR56321912无效输入WR66151811无效输入WR76152013无效输入NextDate函数的强健壮等价类测试用例用例ID月份日期年预期输出SR1-1151912无效输入SR26-11912无效输入SR36151811无效输入SR4-

18、1-11912无效输入SR56-11811无效输入SR6-1151811无效输入SR7-1-11811无效输入NextDate函数的等价类另一种划分法M1=月份:每月有月份:每月有30天天 M2=月份:每月有月份:每月有31天天 M3=月份:此月是月份:此月是2月月 D1=日期:日期:1日期日期28D2=日期:日期日期:日期=29D3=日期:日期日期:日期=30D4=日期:日期日期:日期=31Y1=年:年年:年=1900Y2=年:年是闰年年:年是闰年Y3=年:年是平年年:年是平年弱一般等价类测试用例用例ID月份日期年预期输出WR161420006/15/2000WR272919967/30/1

19、996WR32302002无效输入WR46312000无效输入强一般等价类测试用例测试用例的个数:测试用例的个数:M MD DY=3 Y=3*4 4*3=36 3=36 指导方针和观察 等价类测试的弱形式等价类测试的弱形式(一般或健壮一般或健壮)不如对应的强形式的测试全面。不如对应的强形式的测试全面。如果实现语言是强类型的如果实现语言是强类型的(无效值会引起运行时错误无效值会引起运行时错误),则没有必要使,则没有必要使用健壮形式的测试。用健壮形式的测试。如果错误条件非常重要,则进行健壮形式的测试是合适的。如果错误条件非常重要,则进行健壮形式的测试是合适的。如果输入数据以离散值区间和集合定义,则

20、等价类测试是合适的。当如果输入数据以离散值区间和集合定义,则等价类测试是合适的。当然也适用于如果变量值越界系统就会出现故障的系统。然也适用于如果变量值越界系统就会出现故障的系统。通过结合边界值测试,等价类测试可得到加强。通过结合边界值测试,等价类测试可得到加强。如果程序函数很复杂,函数的复杂性可以帮助标识有用的等价类,就如果程序函数很复杂,函数的复杂性可以帮助标识有用的等价类,就像像NextDate函数一样。函数一样。强等价类测试假设变量是独立的,相应的测试用例相乘会引起冗余问强等价类测试假设变量是独立的,相应的测试用例相乘会引起冗余问题。如果存在依赖关系,则常常会生成题。如果存在依赖关系,则

21、常常会生成“错误错误”测试用例,就像测试用例,就像NextDate函数一样。函数一样。在发现在发现“合适合适”的等价关系之前,可能需要进行多次尝试,就像的等价关系之前,可能需要进行多次尝试,就像NextDate函数例子一样。在其他情况下,存在函数例子一样。在其他情况下,存在“明显明显”或或“自然自然”等价等价关系。如果不能肯定,最好对任何合理的实现进行再次预测。关系。如果不能肯定,最好对任何合理的实现进行再次预测。作业1作业2o 现在要对一个自动饮料售货机软件进行黑盒测试,该软件的规格说明如下:o 一个自动售货机软件可以销售单价1元5角的盒装饮料。该售货机只接收1元和5角两种硬币,若投入1元5

22、角硬币,按下“可乐”、“雪碧”或“红茶”按钮,则送出相应的饮料;若投入的硬币少于1元5角,则显示错误信息并退出硬币;若投入的硬币多于1元5角,则送出饮料的同时退还多余的硬币。o 请给出测试的等价划分类,包括有效等价类和无效等价类,以及基于等价类划分的测试用例作业3o 某一Pascal语言版本规定:o 标识符是由字母开头,后跟字母或数字的任意组合构成。有效字符数为8个,最大字符数为80个o 标识符必须先声明,后使用o 在同一说明语句中,标识符至少必须有一个o 要求:用等价类划分的方法,列出输入域等价类表,并设计相应的测试用例作业4o Windows文件名可以包含除了/:*?”|之外的任意字符。假

23、设合法的文件名长度1-255个西文字符,试用等价类划分法设计Windows文件名的测试用例(不考虑一个文件名包含两个或两个以上非法字符的情况)。作业5作业6 给出一个输出集合等价类划分的例子。假设一个销售书籍的奖励系统,销售三种软件工程类书籍,每本书的单价不同,软件测试每本25元;程序设计每本30元;软件工程每本40元。每月销售额不到(含)500元的部分奖励10%,500(不含)到700元(含)元的部分为15%,超过7000元的部分为20%。该系统生成月份销售报告,汇总售出的各类书籍的总数,总销售额以及奖金。3.决策表3.1决策表o 是分析和表达多逻辑条件下执行不同操作情况的工具o 在一些数据

24、处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。决策表很适合处理这类问题。例如:“阅读指南”决策表12345678问问题题觉得疲倦?觉得疲倦?YYYYNNNN感兴趣?感兴趣?YYNNYYNN糊涂?糊涂?YNYNYNYN建建议议重读重读继续继续跳下一章跳下一章休息休息规则选项3.2决策表的四个组成o 条件桩o 条件条目(条件项)o 动作桩o 动作条目(动作项)决策表桩桩规则规则3规则规则4规则规则1规则规则2c1c2TTTFFFFa1XXa2XXa3XX不关心条目3.3建立判定表的步骤o 确定规则的个数(有n个条件就有2n个规则)o 列出所

25、有条件桩、动作桩o 填入条件项o 填入动作桩、动作项o 化简决策表的合并o 若表中有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系,可设法将其合并。Y YN NY XX XYN-XY Y-NN NX XY-NX三角形问题的决策表1-8910111213141516C1:a、b、c构成三角形构成三角形?NYYYYYYYYc2:a=b?YYYYNNNNc3:a=c?YYNNYYNNc4:c=b?YNYNYNYNa1:非三角形非三角形a2:不等边三角形不等边三角形a3:等腰三角形等腰三角形a4:等边三角形等边三角形a5:不可能不可能测试用例NextDate函数的决策表-第一次尝试

26、M1=月份:每月有30天 M2=月份:每月有31天 M3=月份:此月是2月 D1=日期:1日期28D2=日期:日期=29D3=日期:日期=30D4=日期:日期=31Y1=年:年是闰年Y2=年:年是平年条件1234c1:月份在M1中?Tc2:月份在M2中?Tc3:日期在M3中?Tc4:日期在D1中?c5:日期在D2中?c6:日期在D3中?c7:日期在D4中?c8:年在Y1中?a1:不可能a2:NextDate缺点o 256条规则o 扩展条目决策表扩展条目决策表第二次尝试M1=月份:每月有30天 M2=月份:每月有31天 M3=月份:此月是2月 D1=日期:1日期28D2=日期:日期=29D3=日

27、期:日期=30D4=日期:日期=31Y1=年:年=2000Y2=年:年是闰年Y3=年:年是平年123c1:月份在:月份在M1M1M1c2:日期在:日期在D1D2D3c3:年在:年在a1:不可能:不可能a2:日期增:日期增1a3:日期复位:日期复位a4:月份增:月份增1a5:月份复位:月份复位a6:年增:年增1第二次尝试决策表1234567891011121314151617c1:月份:月份在在M1M1M1M1M2M2M2M2M3M3M3M3M3M3M3M3M3c2:日期:日期在在D1D2D3D4D1D2D3D4D1D1D1D2D2D2D3D3D4c3:年在:年在Y1Y2Y3Y1Y2Y3a1:不

28、可:不可能能a2:日期:日期增增1?a3:日期:日期复位复位?a4:月份:月份增增1?a5:月份:月份复位复位?a6:年增:年增1?第三次尝试M1=月份:每月有30天 M2=月份:每月有31天,12月除外 M3=月份:此月是12月 M4=月份:此月是2月D1=日期:1日期27D2=日期:日期=28D3=日期:日期=29D4=日期:日期=30D5=日期:日期=31Y1=年:年是闰年Y2=年:年是平年第第三三次次尝尝试试决决策策表表C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增11M1D12M1D23M1D34M1D45M1D

29、56M2D17M2D28M2D39M2D410M2D511M3D112M3D213M3D314M3D415M3D516M4D117M4D2Y118M4D2Y219M4D3Y120M4D3Y221M4D422M4D5第三次尝试决策表精简第三次尝试决策表精简C1:月份在:C2:日期在:C3:年在:a1:不可能a2:日期增1a3:日期复位a4:月份增1a5:月份复位a6:年增11-3M1D1,D2,D34M1D45M1D56-9M2D1,D2,D3,D4,10M2D511-14M3D1,D2,D3,D415M3D516M4D117M4D2Y118M4D2Y219M4D3Y120M4D3Y221-22

30、M4D4,D5NextDate函数的决策表测试用例函数的决策表测试用例用例用例ID月份月份日期日期年年预期输出预期输出1-341520014/16/2001443020015/1/200154312001不可能不可能6-911520011/16/20011013120012/1/200111-141215200112/16/200115123120011/1/20021621520012/16/20011722820042/29/20041822820013/1/20011922920043/1/2004202292001不可能不可能21-222302001不可能不可能决策表适用范围总结o 因

31、为决策表具有逻辑严格性,所以在所有功能性测试方法中,这种方法是最严格的。o 决策表最突出的优点是,能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏o 利用决策表能够设计出完整的测试用例集合o 运用决策表设计测试用例可以将条件理解为输入,将动作理解为输出作业1作业2作业34.因果图Cause Effect Graphing4.1因果图o 因果图法产生的背景:等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。o 因果图法能够帮助测试

32、人员按照一定的步骤,高效率的开发测试用例,以检测程序输入条件的各种组合情况,它是将自然语言转化为形式语言规格说明的一种严格方法,可以指出规格说明存在的不完整性和二义性。因果图法介绍o 因果图法是基于这样的一种思想:一些程序的功能可以用判定表(或称决策表)的形式来表示,并根据输入条件的组合情况规定相应的操作。即:因果图法不过是决策表法的前期阶段。我们也可以直接应用决策表。o 因果图法的定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。因果图的基本符号ci和ei均可取值0或1,0表示某状态出现,1表示某状态不出现o 因果图中使用4种因果关

33、系符号来表达因果关系:恒等 非或与因果图的基本符号o 因果图中的4种基本关系 在因果图的基本符号中,图中的左结点ci表示输入状态(或称原因),右结点ei表示输出状态(或称结果)。ci 与 ei 取值0或1,0表示某状态不出现,1则表示某状态出现。恒等:若 c1 是1,则 e1 也为1,否则 e1 为0。非:若 c1 是1,则 e1 为0,否则e1为1。或:若 c1 或 c2 或 c3 是1,则 e1 为1,否则 e1 为0。与:若 c1 和 c2 都是1,则 e1 为1,否则 e1 为0。约束符号(1)o 因果图中用来表示约束关系的约束符号:异异E或或I唯一唯一OR要求要求M强制强制约束符号(

34、2)o因果图中的约束 在实际问题中输入状态相互之间、输出状态相互之间可能存在某些依赖关系,称为“约束”。对于输入条件之间的约束有E(Exclusive or)、I(In)、O(Only)、R(Request)四种约束,对于输出条件的约束只有M(Mandate)约束。(1)原因与原因之间的约束E约束(异):输入a和b中最多有一个可能为1,即a和b不能同时 为1。I 约束(或):输入a、b、c中至少有一个必须为1,即 a、b、c不能同时为0。O约束(唯一):输入a和b必须有一个且仅有一个为1。R约束(要求):输入a是1时,输入b必须是1,即a为1时,b不能为0。(2)结果与结果之间的约束M约束(强

35、制):若结果a为1,则结果b强制为0。4.2因果图生成测试用例的步骤o 分析程序规格说明中哪些是原因,哪些是结果。原因常常是输入条件或输入条件的等价类;结果是输出条件。o 根据语义连接原因和结果o 标明约束条件o 因果图转换成判定表o 把判定表每一列写成测试用例画因果图例1o 某软件说明书的一个要求:o 第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改。但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。Step1:列出原因和结果列出原因和结果Step2:画因果图画因果图Step3:加约束条件加约束条件Step4:建立判定表建立判定表不可能出现

36、应排除例2(中国象棋走马下法)以中国象棋中马的走法为例子,具体说明:1、如果落点在棋盘外,则不移动棋子;2、如果落点与起点不构成日字型,则不移动棋子;3、如果落点处有自己方棋子,则不移动棋子;4、如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子;5、如果不属于1-4条,且落点处无棋子,则移动棋子;6、如果不属于1-4条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子;7、如果不属于1-4条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。请绘制出因果图和判定表,并给出相应的测试用例。课堂练习(中国象棋走马下法)o 第一步:分析原因和结果原因:1、落点在棋盘外;2、不构

37、成日字;3、落点有自方棋子;4、绊马腿;5、落点无棋子;6、落点为对方棋子;7、落点为对方老将。结果:21、不移动;22、移动;23、移动己方棋子消除对方棋子;24、移动并战胜对方。课堂练习(中国象棋跳马下法)第二步:画出因果图可以判定程序中应该包括12个函数或方法课堂练习(中国象棋走马下法)第三步:转换成判定表 作业1o 自动售货机问题o 给出因果图,由因果图画出决策表,并给出测试用例作业2某软件的一个模块的需求规格说明书中描述:(1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。(2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。请绘制出因果图和判定表,并给出相应的测试用例。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(精选Ch3功能性测试课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|