07-决策表测试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
26
Y Y Y Y Y Y 1
Y Y Y Y Y N 1
Y Y Y Y N Y 1
Y Y Y Y N N 1
Y Y Y N Y Y 1
Y Y Y N Y N 1
Y Y Y N N Y 1
Y Y Y N N N 1
×
×
软件测试—功能性测试
4.5 测试用例的设计
改进的三角形问题的测试用例
四 决 策 表
若条件引用了等价类,则“—”的实际含义为:“必须失 败” 13
软件测试—功能性测试
4.5 测试用例的设计
NextDate问题
四 决 策 表
若条件引用了等价类,则“—”的实际含义为:“必须失 败” 条件 规则1 规则2 规则3 输入条件的等价类 Y C1:月份在M1中吗? M1={月份|每月31天} M2={月份|每月30天} M3={月份|此月为2月} …… 规则总数: 8个 C2:月份在M2中吗? C3:月份在M3中吗? 规则条数 A1: A2: ……
Y
N Y
N
N N
Y
N N
N
A1:非三角形 A2:不等边三角形
A3:等腰三角形 A4:等边三角形 A5:不可能
× ×
× × × × ×
10
× ×
软件测试—功能性测试
决策表的各种表示方法
细化条件
四 决 策 表
C1:a<b+c? C2:b<a+c? C3:c<a+b? C4:a=b吗? C5:a=c吗? C6:b=c吗? A1:非三角形 A2:不等边三角形 A3:等腰三角形 A4:等边三角形 A5:不可能 × × × ×
27
软件测试—功能性测试
4.5 测试用例的设计
NextDate问题
不关心条目对完整决策的 识别有微妙影响。
四 决 策 表
若条件引用了等价类,则“—”的实际含义为:“必须失 败” 条件 规则1 规则2 规则3 输入条件的等价类 Y C1:月份在M1中吗? M1={月份|每月31天} M2={月份|每月30天} M3={月份|此月为2月} …… 规则总数: 8个 C2:月份在M2中吗? C3:月份在M3中吗? 规则条数 A1: A2: ……
28
-
Y -
Y
4
4
4
软件测试—功能性测试
4.5 测试用例的设计
11
N ×
Y N ×
Y Y N ×
Y Y Y Y Y Y
Y Y Y Y Y N
Y Y Y Y N Y
Y Y Y Y N N
Y Y Y N Y Y
Y Y Y N Y N
Y Y Y N N Y
Y Y Y N N N ×
×
×
×
软件测试—功能性测试
决策表的各种表示方法
增加一行规则条数统计
四 决 策 表
C1:a<b+c? C2:b<a+c? C3:c<a+b? C4:a=b吗? C5:a=c吗? C6:b=c吗? 规则条数统计 规则条数统计 A1:非三角形 A2:不等边三角形 A3:等腰三角形 A4:等边三角形 A5:不可能 N 32 × Y N 16 × Y Y N 8 × Y Y Y Y Y Y 1 Y Y Y Y Y N 1 Y Y Y Y N Y 1 Y Y Y Y N N 1 Y Y Y N Y Y 1 Y Y Y N Y N 1 Y Y Y N N Y 1 Y Y Y N N N 1 × × × ×
12
×
×
× ×
软件测试—功能性测试
决策表的各种表示方法
有限条目决策表——所有条件都是二叉条件 四 决 策 表
若有n个条件,必须有( 2n)条规则,每条规则对应一个测试用例。 若存在不关心项,则规则中每出现一个不关心项,规则数乘一次 2。
扩展条目决策表——条件可以有多个值 条件的顺序没有要求
通过条件选择,可大大扩展决策表的规模
问 题 建 议
功率大于50马力吗? 维修记录不全吗? 运行10年以上吗? 进行优先的维修处理 做其它处理
1 Y Y Y
2 Y Y N
6 N Y N
7 N N Y
8 N N N
× × ×
×
×
×
×
×
19
软件测试—功能性测试
4.4 决策表的生成
检查发货单
If( 发货单金额超过$500 )
四 决 策 表
发货单金额 赊欠情况 不发批准书 操 发出批准书 作 发出发货单 发出赊欠报告 条 件
四 决 策 表
若问题要求:“…对功率大于50马力的机器、维修记录 不全或已运行10年以上的机器,应给予优先的维修处 条件: 1. 功率大于50马力 采取的措施: 理…”
2. 维修记录不全 3. 运行10年以上 1. 进行优先的维修处理 2. 做其它处理 3 Y N Y 4 Y N N 5 N Y Y
用例ID 1 2 3 4 5 6 7 8 9 10 11
a 4 1 1 5 ? ? 2 ? 3 2 3
b 1 4 2 5 ? ? 3 ? 2 2 4
c 2 2 4 5 ? ? 2 ? 2 3 5
预期输出 非三角形 非三角形 非三角形 等边三角形 不可能 不可能 等腰三角形 不可能 等腰三角形 等腰三角形 不等边三角形
R2={<a,b,c>|有三条边a,b,c的等腰三角形} R3={<a,b,c>|有三条边a,b,c的不等边三角形}
R4={<a,b,c>|三条边a,b,c不构成三角形}
能构成三角形?
23
软件测试—功能性测试
4.5 测试用例的设计
四 决 策 表
输入条件的等价类 三角形问题的决策表 D1={<a,b,c>|a>=b+c} D2={<a,b,c>|b>=a+c} 通过增加行动,显示何时规则在逻辑上不可能满足 D3={<a,b,c>|c>=a+b} 通过条件选择,扩展决策表的规模 C1:a,b,c构成三角形? C2:a=b吗? C3:a=c吗? C4:b=c吗? 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
问 你对内容感兴趣吗?
Y
Y Y
题 书中的内容使你糊涂吗? 请回到本章开头重读 建 继续读下去 跳到下一章去读 停止阅读,请休息
Y N -
Y
N N
NN N NN Y -N
不关心条 目 ×
×
× × ×× × ×××
16

软件测试—功能性测试
4 决策表
原因 基本组成 决策表的化简 决策表的生成 测试用例的设计 讨论
14
-
Y -
Y
4
4
4
软件测试—功能性测试
4.3 决策表的化简
原因 基本组成 决策表的化简 决策表的生成 测试用例的设计 讨论
15
软件测试—功能性测试
4.3 决策表的化简
设法合并具有相同动作、且条件项相似的规则
1 2 Y
Y N
3 Y
N Y
4
5 N
Y Y
6 N
Y N
7 N
8
四 决 策 表
你觉得疲倦吗?
决策表的完备性保证一种完备的测试
9
软件测试—功能性测试
决策表的各种表示方法
增加行动--通过增加行动,可显示何时规则在逻辑上不可能满足
C1:a,b,c构成三角形? N Y Y Y Y Y Y Y Y
四 决 策 表
C2:a=b吗? C3:a=c吗?
C4:b=c吗?
-
Y Y
Y
Y Y
N
Y N
Y
Y N
N
N Y
17
软件测试—功能性测试
4.4 决策表的生成
四 决 策 表
根据软件规格说明,确定规则个数 列出所有条件桩 填入条件项Condition Entry 填入动作项Action Entry 产生决策表并化简
决策表的产生可能需要迭代进行 注意完备性、无冗余性和一致性。
18
软件测试—功能性测试
4.4 决策表的生成

× ×
× × × × 规则 Action × If × Entry :在条件 8 then 组合下应采取的行动
Action 停止阅读,请休息 Stub :列出问题规
定可能采取的行动
软件测试—功能性测试
4.2 基本组成
决策表的特点
四 决 策 表
如果条件条目具有二值逻辑,则决策表 的条件部分是旋转了90度的真值表 保证覆盖所有可能的条件值组合
条件取值,给出真假值 决策表的各个部分例

四 决 策 表
c1 条
c2 c3 a1
Y Y
Y N
N -
Y Y
Y N
N -

行 动
a2
a3
× ×
×
Action a4 Stub :列出问题规
定可能采取的行动
规则 if × then ×
× ×
×
组合下应采取的行动
Action × Entry :在条件 7
软件测试—功能性测试
决策表的完备性保证一种完备的测试
4
软件测试—功能性测试
4 决策表
原因 基本组成 决策表的化简 决策表的生成 测试用例的设计 讨论
5
软件测试—功能性测试
Condition Stub:列出问题
的所有条件
4.2 基本组成
Condition Entry :针对左列
条件取值,给出真假值 决策表的各个部分
四 决 策 表
Condition Stub:列出问题
的所有条件
4.2 基本组成
读书指ห้องสมุดไป่ตู้决策表
1 2 Y Y N 3 Y N Y 4 Y N N Y Y Y
Condition Entry :针对左列
5 N Y Y 6 N Y N 7 N N Y 8 N N N
条件取值,给出真假值
四 决 策 表
你觉得疲倦吗? 问 你对内容感兴趣吗? 书中的内容使你糊涂? 请回到本章开头重读 建 议 继续读下去 跳到下一章去读
Else 发批准书及发货单
Endif 金额 欠款>60 发批准书、发货单和赊欠报告 <=500 Endif 欠款<=60 发批准书、发货单
20
软件测试—功能性测试
4 决策表
原因 基本组成 决策表的化简 决策表的生成 测试用例的设计 讨论
21
软件测试—功能性测试
4.5 测试用例的设计
四 决 策 表
用决策表表示测试用例,则输入即为条 件,输出即为行动,有时,条件最终引 用输入的等价类,行动则引用软件的主 要功能处理部分 决策表可机械地强制为完备的,故可得 到测试用例的完整集合
22
软件测试—功能性测试
4.5 测试用例的设计
三角形问题
三角形类型? 四 决 策 表
输出的等价类
R1={<a,b,c>|有三条边a,b,c的等边三角形}
1 2 3 4 >500 >500 <=500 <=500 >60 <=60 >60 <=60
If ( 欠款超过60天 )
在偿还欠款前不予批准 Else 发批准书及发货单
×
× × × × × × ×
Endif Else If( 欠款超过60天) 发批准书、发货单及赊欠报告
检查 发货单
不发批准书 金额 欠款>60 >500 欠款<=60 发批准书、发货单
4.5 测试用例的设计
A4:等边三角形
A5:不可能
×
× ×
25
软件测试—功能性测试
4.5 测试用例的设计
改进的三角形问题的决策表
规则总数: 64个
四 决 策 表
对于有限条目决策表:若有n个条件,须有( 2n)条规则。若存在 不关心项,则规则中每出现一个不关心项,规则数乘1次 2。
C1:a<b+c? C2:b<a+c? C3:c<a+b? C4:a=b吗? C5:a=c吗? C6:b=c吗? 规则条数统计 A1:非三角形 A2:不等边三角形 A3:等腰三角形 A4:等边三角形 A5:不可能 N 32 × Y N 16 × Y Y N 8 × × × × × × ×
软件测试—功能性测试
软件测试
1
软件测试—功能性测试
功能性测试
边界值测试 等价类测试 基于决策表的测试 功能性测试的回顾
2
软件测试—功能性测试
4 决策表
原因 基本组成 决策表的化简 决策表的生成 测试用例的设计 讨论
3
软件测试—功能性测试
4.1 产生的原因
四 决 策 表
决策表方法是功能性测试方法 中最严格的。 决策表方法可以适用各种情况, 不必要求 数据的独立性
条件桩
条件项
规则
行动桩 行动项
Action Stub :列出问题规
定可能采取的行动
组合下应采取的行动
Action Entry :在条件 6
软件测试—功能性测试
Condition Stub:列出问题
的所有条件
4.2 基本组成
r1 Y r2 Y r3-4 Y
Condition Entry :针对左列
r5 N r6 N r7-8 N
× × × × × × ×
24
× ×
软件测试—功能性测试
不关心条目对完整决策树 的识别有微妙影响。 改进的三角形问题的决策表 四 决 策 表
C1:a<b+c? C2:b<a+c? C3:c<a+b? C4:a=b吗? C5:a=c吗? C6:b=c吗? A1:非三角形 A2:不等边三角形 A3:等腰三角形 × × × × N × Y N × Y Y N × Y Y Y Y Y Y Y Y Y Y Y N Y Y Y Y N Y Y Y Y Y N N Y Y Y N Y Y Y Y Y N Y N Y Y Y N N Y Y Y Y N N N ×
相关文档
最新文档