第七章 基于决策表的测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
×
×
- - Y1 Y2 Y1 Y2 - - × × × × ×
×
×
×
× ×
× ×
第三次尝试决策表精简
C1:月 份在: 1-3 4 5 6-9 M1 M1 M1 M2 C2:日 期在: C3:年 在: a1:不 可能 a2:日 期增1 × × × × × a3:日 期复位 a4:月 份增1 a5:月 份复位 a6:年 增1 D1, D2, - D3 D4 D5 - -
东北大学软件学院
NextDate函数测试用例NextDate函数测试用例-第一次尝试 函数测试用例
M1 = {月份:每月有30天} M2 = {月份:每月有31天} M3 = {月份:此月是2月} D1 = {日期:1≤日期≤28} D2 = {日期:日期=29} D3 = {日期:日期=30} D4 = {日期:日期=31} Y1 = {年:年是闰年} Y2 = {年:年是平年} 条件 c1:月份在M1中? T c2:月份在M2中? c3:日期在M3中? c4:日期在D1中? c5:日期在D2中? c6:日期在D3中? c7:日期在D4中? c8:年在Y1中? a1:不可能 a2:NextDate T T
决策表的分类
有限条目决策表:所有条件都是二叉条件的决策表。 有限条目决策表:所有条件都是二叉条件的决策表。 扩展条目决策表:条件有多个值的对应的决策表。 扩展条目决策表:条件有多个值的对应的决策表。
东北大学软件学院
三角形问题决策表
c1:a、b、c构成三角形? c2:a=b? c3:a=c? c4:c=b? a1:非三角形 a2:不等边三角形 a3:等腰三角形 a4:等边三角形 a5:不可能 × × × × × × × N - - - × × Y Y Y Y Y Y Y N Y Y N Y Y Y N N Y N Y Y Y N Y N Y N N Y Y N N N
第三次尝试
M1 = {月份:每月有30天} M2 = {月份:每月有31天,12月除外} M3 = {月份:此月是12月} M4 = {月份:此月是2月} D1 = {日期:1≤日期≤27} D2 = {日期:日期=28} D3 = {日期:日期=29} D4 = {日期:日期=30} D5 = {日期:日期=31} Y1 = {年:年是闰年} Y2 = {年:年是平年} 东北大学软件学院
东北大学软件学院
佣金问题的测试用例
决策表分析不太适合佣金问题。这并不奇怪,因为在佣金问 决策表分析不太适合佣金问题。这并不奇怪, 题中只有很少的决策逻辑。 题中只有很少的决策逻辑。由于等价类中的变量是真正独立 在条件对应等价类的决策表中没有不可能规则。 的,在条件对应等价类的决策表中没有不可能规则。
C3:年 在: - - - - - - - - - - -
a1:不可 能
a2:日期 增1 × × ×
a3:日期 复位
a4:月份 增1
a5:月份 复位
a6:年增 1
第 三 次 尝 试 决 策 表
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
× × × × × × × × × × ×
×
×
×
× ×
东北大学软件学院
NextDate函数的决策表测试用例 函数的决策表测试用例
用例ID 1-3 4 5 6-9 10 11-14 15 16 17 18 19 20 21-22 月份 4 4 4 1 1 12 12 2 2 2 2 2 2 日期 15 30 31 15 31 15 31 15 28 28 29 29 30 年 2001 2001 2001 2001 2001 2001 2001 2001 2004 2001 2004 2001 2001 预期输出 4/16/2001 5/1/2001 不可能 1/16/2001 2/1/2001 12/16/2001 1/1/2002 2/16/2001 2/29/2004 3/1/2001 3/1/2004 不可能 不可能
东北大学软件学院
三角形问题的测试用例
用例ID DT1 DT2 DT3 DT4 DT5 DT6 DT7 DT8 DT9 DT10 DT11 a 4 1 1 5 ? ? 2 ? 2 3 3 b 1 4 2 5 ? ? 2 ? 3 2 4 c 2 2 4 5 ? ? 3 ? 2 2 5 预期输出 非三角形 非三角形 非三角形 等边三角形 不可能 不可能 等腰三角形 不可能 等腰三角形 等腰三角形 三角形
东北大学软件学院
第二次尝试决策表
1 c1:月份 在 c2:日期 在 c3:年在 规则条数 统计 行为 a1:不可 能 a2:日期 增1 a3:日期 复位 a4:月份 增1 a5:月份 复位 a6:年增1 × × × × × × × × × ? ? ? ? ? ? × ? ? ? × × × × × × × M1 D1 - 3 2 M1 D2 - 3 3 M1 D3 - 3 4 M1 D4 - 3 5 M2 D1 - 3 6 M2 D2 - 3 7 M2 D3 - 3 8 M2 D4 - 3 9 M3 D1 Y1 1 10 M3 D1 Y2 1 11 M3 D1 Y3 1 12 M3 D2 Y1 1 13 M3 D2 Y2 1 14 M3 D2 Y3 1 15 M3 D3 - 3 16 M3 D3 - 3 17 M3 D4 - 3
东北大学软件学院
指导方针与观察
1.决策表技术适用于具有以下特征的应用程序: 决策表技术适用于具有以下特征的应用程序: if-then-else逻辑很突出 逻辑很突出。 if-then-else逻辑很突出。 输入变量之间存在逻辑关系。 输入变量之间存在逻辑关系。 涉及输入变量子集的计算。 涉及输入变量子集的计算。 输入与输出之间存在因果关系。 输入与输出之间存在因果关系。 很高的圈(McCabe)复杂度(请参阅第9 (McCabe)复杂度 很高的圈(McCabe)复杂度(请参阅第9章)。 决策表不能很好地伸缩( 2.决策表不能很好地伸缩(有n个条件的有限条目决策表有 个规则) 有多种方法可以解决这个问题——使用扩展条 2n个规则) 。 有多种方法可以解决这个问题 使用扩展条 目决策表、代数简化表,将大表“分解”为小表, 目决策表、代数简化表,将大表“分解”为小表,查找条件 条目的重复模式。 条目的重复模式。 与其他技术一样,迭代会有所帮助。 3.与其他技术一样,迭代会有所帮助。第一次标识的条件 和行动可能不那么令人满意。 和行动可能不那么令人满意。把第一次得到的结果作为铺路 逐渐改进,直到得到满意的决策表。 石,逐渐改进,直到得到满意的决策表。 东北大学软件学院
东北大学软件学院
带有互斥条件的决策表的规则条数统计
条件 c1:月份在M1中? c2:月份在M2中? c3:月份在M3中? 规则条数统计 a1 规则1 T - - 4 规则2 - T - 4 规则3 - - T 4
东北大学软件学院
去掉重复的决策表
条件 c1:月份在M1中? c2:月份在M2中? c3:月份在M3中? 规则条数统计 a1 条件 c1:月份在M1中? c2:月份在M2中? c3:月份在M3中? 规则条数统计 a1:不可能 1.1 T T T 1 × 1.2 T T F 1 × 1.3 T F T 1 × 1.4 T F F 1 2.3 F T T 1 × 2.4 F T F 1 3.4 F F T 1 F F F 1 × 1.1 T T T 1 1.2 T T F 1 1.3 T F T 1 1.4 T F F 1 2.1 T T T 1 2.2 T T F 1 2.3 F T T 1 2.4 F T F 1 3.1 T T T 1 3.2 T F T 1 3.3 F T T 1 3.4 F F T 1
东北大学软件学院
经过修改的三角形问题决策表
c1:a<b+c? c2:b<a+c? c3:c<b+a? c4:a=b? c5:a=c? c6:b=c? a1:非三角形 a2:不等边三角形 a3:等腰三角形 a4:等边三角形 a5:不可能 × × × × × × × F - - - - - × T F - - - - × T T F - - - × × T T T T T T T T T T T F T T T T F T T T T T F F T T T F T T T T T F T F T T T F F T T T T F F F
东北大学软件学院
第二次尝试
M1 = {月份:每月有30天} M2 = {月份:每月有31天} M3 = {月份:此月是2月} D1 = {日期:1≤日期≤28} D2 = {日期:日期=29} D3 = {日期:日期=30} D4 = {日期:日期=31} Y1 = {年:年=2000} Y2 = {年:年是闰年} Y3 = {年:年是平年}
总结
百度文库• 决策表 • 决策表的应用
东北大学软件学院
C1:月 份在: 1 2 3 M1 M1 M1 M1 M1 M2 M2 M2 M2 M2 M3 M3 M3 M3 M3 M4 M4 M4 M4 M4 M4 M4
C2:日 期在: D1 D2 D3 D4 D5 D1 D2 D3 D4 D5 D1 D2 D3 D4 D5 D1 D2 D2 D3 D3 D4 D5
东北大学软件学院
冗余决策表
条件 c1 c2 c3 a1 a2 a3 1-4 T - - × - × 5 F T T × × - 6 F T F × × × 7 F F T - × × 8 F F F - - × 9 T F F × - ×
东北大学软件学院
不一致的决策表
条件 c1 c2 c3 a1 a2 a3 1-4 T - - × - × 5 F T T × × - 6 F T F × × × 7 F F T - × × 8 F F F - - × 9 T F F - × -
第七章 基于决策表的测试
东北大学软件学院
决策表
决策表的四个组成部分: 决策表的四个组成部分: • 条件桩; 条件桩; • 条件条目; 条件条目; • 行动桩; 行动桩; • 行动条目; 行动条目;
东北大学软件学院
决策表图示
桩 c1 c2 c3 a1 a2 a3 a4 规则 规则 规则 规则 规则 规则 1 2 5 6 3、4 7、8 T T T F F F T T × × × × 东北大学软件学院 × × T F × F - T T × × T F F -
东北大学软件学院
带有互斥条件的决策表
条件 c1:月份在M1中? c2:月份在M2中? c3:月份在M3中? a1 a2 a3 规则1 T - - 规则2 - T - 规则3 - - T
东北大学软件学院
规则条数统计
c1:a<b+c? c2:b<a+c? c3:c<b+a? c4:a=b? c5:a=c? c6:b=c? 规则条数统计 a1:非三角形 a2:不等边三角形 a3:等腰三角形 a4:等边三角形 a5:不可能 × × × × × × × F - - - - - 32 × T F F - - - 8 × T T T - - - 8 × × T T T T T T 1 T T T T T F 1 T T T T F T 1 T T T T F F 1 T T T F T T 1 T T T F T F 1 T T T F F T 1 T T T F F F 1
D1, - D2 ,D3, D4, D5 - D1 ,D2, - D3,D4 D5 D1 D2 D2 D3 D3 D4 ,D5 - - Y1 Y2 Y1 Y2 - × ×
10 11-14 15 16 17 18 19 20 21-22
M2 M3 M3 M4 M4 M4 M4 M4 M4
× × × × × × ×