软件测试-7黑盒测试决策表法

  • 格式:ppt
  • 大小:1.20 MB
  • 文档页数:30

下载文档原格式

  / 30
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

√ √ √ √ √


14
根据决策表测试用例
编号
DT1 DT2 DT3 DT4 DT5 DT6 DT7 DT8 DT9 DT10 DT11
2013-1-17
[a,b,c]
412 142 124 555 ??? ??? 223 ??? 232 322 345
期望输出
非三角形 非三角形 非三角形 等边三角形 不可能 不可能 等腰三角形 不可能 等腰三角形 等腰三角形 一般三角形
M1 M1 M1 M2 M2 - D4 D5 - D5 - - - - - √ √ √ √ √ √
M3 - -
M3 D5 -
M4 M4 M4 M4 M4 D1 D2 D2 D3 D3 - Y1 Y2 Y1 Y2 √
M4
D4、D5
- √
√ √ √ √


√ √
√ √
测试用例表
测试用例 Test1-Test3 Test4 month 6 6 day 16 30 year 2001 2004 预期输出 17/6/2001 1/7/2004
决策表的简化


简化是以合并相似规则为目标; 若表中有两条以上规则具有相同的动作, 并且在条件项之间存在极为相似的关系, 便可以合并。
Y Y N N Y N √ √ Y N - √ Y Y - N N N Y - N



将“阅读指南”决策表简化
规则 选项
1~4
Y
5
N
6
N
7~8
N
问 题
觉得疲倦吗 感兴趣吗 糊涂吗 重读
决策表实例

在一些数据处理问题当中,某些操作的实 施依赖于多个逻辑条件的组合,即:针对 不同逻辑条件的组合值,分别执行不同的 操作。决策表很适合于处理这类问题。
决策表的优点:

能够将复杂的问题按照各种可能的情况 全部列举出来,简明并且避免遗漏。因 此,利用决策表能够设计出完整的测试 用例集合。
决策表的组成
√ √ √ √ √ √ √ √ √ √ √ √ √ √ √
动作: a1:不可能 a2:day加1 a3:day复位 a4:month加1 a5:month复位 a6:year加1
简化NextDate函数决策表


规则1、2、3都涉及有30天的月份day类 D1、D2和D3,并且它们的动作项都是 day加1,因此可以将规则1、2、3合并。 类似地,有31天的月份day类D1、D2、 D3和D4也可合并,2月的D4和D5也可合 并。
2013-1-17 1 2 3 4 5 6 7 8
条件:a,b,c是否可以 构成三角形
9 10 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 √
2004 2001 2004 2001 2004 2004 2001 2004 2001 2004
不可能
17/8/2004 1/9/2001 17/12/2004 1/1/2002 17/2/2004 29/2/2004 1/3/2001 1/3/2001 不可能 不可能
决策表测试的适用范围

if-else逻辑突出;
• 恒等: IF A THEN B • 非: IF (NOT A) THEN B • 或: IF (A OR B) THEN C • 与:IF (A AND B) THEN C

输入变量之间存在逻辑关系; 涉及输入变量子集的计算; 输入与输出之间存在因果关系;
适用于使用决策表设计测试用例的情况:
Test5
Test6-Test9 Test10 Test11-Test14 Test115 Test16 Test17 Test18 Test19 Test20 Test21-Test22
6
8 8 12 12 2 2 2 2 2 2
31
16 31 16 31 16 28 28 29 29 30
2001


year变量的有效等价类: Y1: {year是闰年} Y2: {year不是闰年} 考虑各种有效的输入情况,程序中可能采 取的操作有以下六种: a1: 不可能 a2: day+1 a3: day复位 a4: month+1 a5: 复位 a6: year+1
规则
选项
1
2
3
4
5
6
7
8
9
10
11
条件桩
规则
条件项
决策表
规则 选项 条件:c1 c2 c3
动作:a1 a2ຫໍສະໝຸດ Baidua3 a4
动作桩
1 T T T √ √
2 T T F √ √
3,4 T F -
5 F T T √ √
6 F T F

7,8 F F -

动作项

决策表的生成


若c1、c2、c3都为真,则采取动作a1和a2; 若c1、c2都为真,c3为假,则采取动作a1和a3; 将任何一个条件组合的特定取值及相应要执 行的动作称为一条规则,在决策表中贯穿条 件项和动作项的一列就是一条规则。
习题
1、某软件的一个模块的需求规格说明书中描述: “……对于功率大于50马力的机器或者维修记录不全的或已 经运行10年以上的机器应予以优先的维修处理……”。
这里假定“维修记录不全”和“优先维修处理”有严格的定义。
请建立该需求的决策表,并绘制出化简(合并规则)后的决 策表。

乘机可免费携带30kg的行李。超出重量按 比例收费:残疾乘客按超出重量的4倍收 取费用,若是国内乘客则只收取3倍于超 出部分的费用,若是头等舱则只收取2倍 于超出重量的费用;国内乘客头等舱收取 4倍于超出部分的费用,否则是6倍;头等 舱的国际乘客收取8倍超出部分的费用, 否则是12倍。








√ √
√ √
选项 规则
12
13 14 15 16 17 18 19 20 21 22
条件: c1:month c2:day c3:year
M3 M3 M3 M3 M4 M4 M4 M4 M4 M4 M4 D2 D3 D4 D5 D1 D2 D2 D3 D3 D4 D5 - - - - - Y1 Y2 Y1 Y2 - -
黑盒测试用例设计 ——决策表法
概述
在一个程序中,如果输入输出比较 多,输入之间、输出之间相互制约 的条件比较多,在这种情况下使用 决策表更合适,它可以清楚地表达 它们之间的各种复杂关系。 决策表法是黑盒测试方法中最为严 格、最具有逻辑性的测试方法

1 决策表的概念

决策表的概念:决策表是分析和表达多逻 辑条件下执行不同操作情况的工具。
三角形问题的决策表用例设计
表1
C1:abc能否构成三角形? C2:a=b? C3:a=c? C4:b=c? A1:非三角形 A2:一般三角形 A3:等腰三角形 A4:等边三角形 A5:不可能
该条件可以扩展成: a+b>c b+c>a c+a>b
13
Y N Y Y
1-8
N √
9
Y Y Y Y
10
Y Y Y N
考,直接留级;
练习2

某厂对一部分职工重新分配工作,分配原 则是:
• 年龄不满20岁,文化程度是小学者脱产学习, • •
文化程度是中学者当电工; 年龄满20岁但不足50岁,文化程度是小学或中 学者,男性当钳工,女性当车工;文化程度是 大学者技术员; 年龄满50及50以上,文化程度是小学或中学者 当材料员,文化程度是大学者当技术员。
简化后的NextDate函数决策表
1-3 4 条件: c1:month c2:day c3:year 动作 a1:不可能 a2:day加1 a3:day复位 a4:month加1 a5:month复位 a6:year加1 5 6-9 10 11-14 15 16 17 18 19 20 21-22
11
Y Y N Y
12
Y Y N N
14
Y N Y N
15
Y N N Y
16
Y N N N √

√ √ √ √


2013-1-17
13
三角形问题的扩展决策表
表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:不可能
条件: c1:month c2:day c3:year 动作: a1:不可能 a2:day加1 a3:day复位 a4:month加1 a5:month复位 a6:year加1
M1 D1 -
M1 M1 M1 M1 M2 M2 M2 M2 M2 M3 D2 D3 D4 D5 D1 D2 D3 D4 D5 D1 - - - - - - - - - - √
24
决策表应用



决策表最突出的优点是,能够将复杂的问题 按照各种可能的情况全部列举出来,简明并 避免遗漏。 利用决策表能够设计出完整的测试用例集合。 运用决策表设计测试用例可以将条件理解为 输入,将动作理解为输出
练习1

某校关于学生升留级的规定为:
• 一学期有三门考试课程不及格,直接留级; • 一学期考试和考察四门课程不及格者,不予补



规格说明以决策表形式给出,或较易转换为决策表. 条件的排列顺序不会也不应该影响执行的操作 规则的排列顺序不会也不应该影响执行的操作 当某一规则的条件已经满足,并确定要执行的操作 后,不必检验别的规则. 如果某一规则的条件要执行多个操作任务,这些操 作的执行顺序无关紧要.
2013-1-17

√ √ √ √
决策表的化简
8 F T F
×
2013-1-17
31

决策表通常由以下4部分组成:
条件桩—列出问题的所有条件 条件项—针对条件桩给出的条件列出所有可能的取值 动作桩—列出问题规定的可能采取的操作 动作项—指出在条件项的各组取值情况下应采取的动作
条件桩 动作桩
条件项 动作项
规 则
将任何一个条件组合的 特定取值及相应要执行 的动作称为一条规则。 在决策表中贯穿条件项 和动作项的一列就是一 条规则。
15
例2:NextDate函数的决策表测试用例设计


month变量的有效等价类: M1: { month=4,6,9,11 } M2: {month=1,3,5,7,8,10} M3: {month=12} M4: { month=2 } day变量的有效等价类: D1: {1≤day≤27} D2: {day=28} D3: {day=29} D4: {day=30} D5: {day=31}
若表中有两条以上规则具有相同的动作,并且在条件项之间存在极
为相似的关系,便可以合并。 合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值 无关。
例题:三角形问题决策表
1.
2. 3. 4. 5.
确定规则个数。(确定条件和动作) 列出所有的条件桩和动作桩 填入输入项 填入动作项,得到初始决策表 化简。(合并相似规则)
1 国内乘客 -
2 T
3 T
4 T
5 T
6 F
7 F
8 F
9 F
头等舱
残疾乘客 行李重量W<=30kg 免费 (W-30)*2

- T √
T
F F
F
F F
T
T F √
F
T F
T
F F
F
F F
T
T F
F
T F
(W-30)*3
(W-30)*4 (W-30)*6 (W-30)*8 (W-30)*12 √ √
---
Y Y

Y N √
N -


继续
跳下一章 休息


决策表的生成----构造决策表的5个步骤:
(1) 确定规则的个数。
有n个条件的决策表有2n个规则(每个条件取真、假值)。
(2) 列出所有的条件桩和动作桩。 (3) 填入条件项。 (4) 填入动作项,得到初始决策表。 (5) 简化决策表,合并相似规则。