问题描述
设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下:“有一个处理单价为1元5角的盒装饮料的自动售货机软件,若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。“
(1)试利用因果图法,建立该软件的因果图;
(2)设计测试该软件的全部测试用例。
解决方案
(1) 试利用因果图法,建立该软件的因果图
原因 | 结果 |
---|---|
C1:投入1元5角硬币 C2:投入2元硬币 C3:按下“可乐” C4:按下“雪碧” C5:按下“红茶” |
E1:送出可乐 E2:送出雪碧 E3:送出红茶 E4:退还5角硬币 E5:提示投入硬币 |
程序对应的因果图如下所示:

(2) 设计测试该软件的全部测试用例
由于约束,不可能的情况:C1C2=11;C3C4C5=000/111/110/101/011
首先根据因果图得到决策表(去除以上不可能):
选项规则 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|
条件 | |||||||
C1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 |
C2 | 0 | 0 | 0 | 1 | 1 | 1 | 0 |
C3 | 1 | 0 | 0 | 1 | 0 | 0 | – |
C4 | 0 | 1 | 0 | 0 | 1 | 0 | – |
C5 | 0 | 0 | 1 | 0 | 0 | 1 | – |
10 | 1 | 1 | 1 | 1 | 1 | 1 | 0 |
动作 | |||||||
E1 | √ | √ | |||||
E2 | √ | √ | |||||
E3 | √ | √ | |||||
E4 | √ | √ | √ | ||||
E5 | √ | ||||||
测试用例 | 投1元5角 按下可乐 |
投1元5角 按下雪碧 |
投1元5角 按下红茶 |
投2元 按下可乐 |
投2元 按下雪碧 |
投2元 按下红茶 |
不投币 按下可乐 |
再根据决策表设计测试用例:
测试用例编 | 输入 | 预期输出 |
---|---|---|
1 | 投1元5角 按下可乐 |
送出可乐 |
2 | 投1元5角 按下雪碧 |
送出雪碧 |
3 | 投1元5角 按下红茶 |
送出红茶 |
4 | 投2元 按下可乐 |
送出可乐 退还5角 |
5 | 投2元 按下雪碧 |
送出雪碧 退还5角 |
6 | 投2元 按下红茶 |
送出红茶 退还5角 |
7 | 不投币 按下可乐 |
提示投入硬币 |
参考文章
(六)练习:饮料自动售货机
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!