软件质量保证与测试
基于判定表的测试
单锦辉
北京大学软件研究所
shanjh@sei.pku.edu.cn
内容
判定表(决策表)测试的原理
三角形问题的测试用例
次日函数测试用例
佣金问题的测试用例
判定表测试的讨论
2004-3-23 Shan Jin-Hui 2
判定表(决策表)测试的原理
在一些数据处理问题中,某些操作是否实施依赖
于多个逻辑条件的取值
在这些逻辑条件取值的组合所构成的多种情况下,
分别执行不同的操作
处理这类问题的一个非常有力的分析和表达工具
是判定表,或称决策表(Decision Table)
在所有功能性测试方法中,基于判定表的测试方
法是最严格的
决策表在逻辑上是严密的
2004-3-23 Shan Jin-Hui 3
判定表的组成
条件桩(Condition Stub )、条件项
(Condition Entity )
动作桩(Action Stub )、动作项(Action
Entity)
规则(rule)
2004-3-23 Shan Jin-Hui 4
判定表的组成(续)
条件桩条件桩 条条件项件项
条件桩 条件项
规
则
动作桩动作桩 动动作项作项
动作桩 动作项
2004-3-23 Shan Jin-Hui 5
判定表示例:三角形问题
a,b,c构成三角形? N Y Y Y Y Y Y Y Y
a=b? - Y Y Y Y N N N N
a=c? - Y Y N N Y Y N N
b=c? - Y N Y N Y N Y N
非三角形 X
不等边三角形 X
等腰三角形 X X X
等边三角形 X
不可能 X X X
2004-3-23 Shan Jin-Hui 6
规则
任何一个条件组合的特定取值及其相应要
执行的操作称为规则
在判定表中贯穿条件项和动作项的一列就
是一条规则
判定表中列出多少组条件取值,也就有多
少条规则,即条件项和动作项有多少列
2004-3-23 Shan Jin-Hui