决策表简介
在所有的黑盒测试方法中,基于决策表(也称判定表)的测试是最为严格、最具有逻辑性的测试方法。
’决策表的概念:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具。
决策表的优点
能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用决策表能够设计出完整的测试用例集合。
在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。决策表很适合于处理这类问题。
决策表的构成
了解五个概念——条件桩、动作桩、条件项、动作项和规则。
条件桩:列出问题的所有条件,如上述3个条件——功率大小、维修记录和运行时间。
动作桩:列出针对问题所采取的操作,如优先维修。
条件项:针对所列条件的具体赋值,即对每个条件可以取真值和假值。
动作项:列出在条件项(各种取值)组合情况下应该采取的动作。
规则:任何一个条件组合的特定取值及其相应要执行的操作。在决策表中贯穿条件项和动作项的一列就是一条规则。
决策表构建步骤
1、确定规则个数
2、列出所有的条件桩和动作桩
3、填入动作项,得到初始决策表
4、简化决策表,合并相似规则
若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。
合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值无关,称为无关条件。
决策表实例
(1)使用决策表法为设备维修程序设计测试用例
仍以上述“设备维修”为例来说明如何制定决策表。首先,列出所有的条件桩和动作桩,本例的条件桩有3个,分别为:
机器功率是否大于100马力?
维修记录是否完整?
运行时间是否超过6年?
本例的动作桩有两个,分别为:
优先维修。
正常维修。
接着确定条件项,即上述每个条件的值分别取“是(Y)”和“否(N)”。根据条件项的组合确定其对应的活动,如表所示。
序 号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 8 | |
条件 | 功率大于100马力吗 | Y | Y | Y | Y | N | N | N | N | N |
维修记录不全吗 | Y | Y | N | N | Y | Y | N | N | N | |
运行时间超过6年吗 | Y | N | Y | N | Y | N | Y | N | N | |
动作 | 优先维修 | √ | √ | √ | √ | √ | √ | √ | ||
正常维修 | √ | √ |
根据表6-23所示的4种组合可设计出以下4个测试用例:
功率大于100马力(如,200马力),优先维修。
功率不大于100马力(如,99马力),维修记录不全,优先维修。
功率不大于100马力(如,99马力),维修记录全且运行时间超过6年(如,8年),优先维修。
功率不大于100马力(如,99马力),维修记录全且运行时间不超过6年(如,3年),正常维修。
序 号 | 1 | 5 | 7 | 8 | 8 | |
条件 | 功率大于100马力吗 | Y | N | N | N | N |
维修记录不全吗 | — | Y | N | N | N | |
运行时间超过6年吗 | — | — | Y | N | N | |
动作 | 优先维修 | √ | √ | √ | ||
正常维修 | √ | √ |