例子:打印机是否能打印出来正确的内容,有多个因素影响,包括驱动程序、纸张、墨粉等。(为了简化问题,不考虑中途断电、卡纸等因素的影响)
一 列出条件桩和动作桩
条件桩:
(1) 驱动程序是否正确?
(2) 是否有纸张?
(3) 是否有墨粉?
动作桩:(动作桩有两种:打印内容和不同的错误提示,并且假定:优先警告缺纸,然后警告没有墨粉,最后警告驱动程序不对。)
(1) 打印内容
(2) 提示驱动程序不对
(3) 提示没有纸张
(4) 提示没有墨粉
二 生成初始化的判定表
注: 每一个条件都有1和0两个取值,驱动程序正确/有纸张/有墨粉,取值为1;反之,取值为0;三个条件就有2的3次方种组合,当有n个条件时,就有2的n次方种组合
三 合并判定表
合并后的判定表可以设计测试用例,每一列代表一条测试用例。
注:合并规则:以第四列和第六列合并为例
判定表的优/缺点:
优点:把复杂的问题按各种可能的情况一一列举,简明而易于理解,也避免遗漏。
缺点:不能表达重复执行的动作,如循环结构。判定表不能很好的伸缩。如有n个条件的判定表有2的n次方个规则。
四 判定表转化成测试用例
参考文章:
CSDN博主「liangfengchang」的原创文章,遵循CC 4.0 BY-SA版权协议,原文链接:https://blog.csdn.net/liangfengchang/article/details/45041951