1、测试用例设计自动售货机因果图分析测试用例设计自动售货机因果图分析实验三 黑盒测试(二)一、实验目的 通过本实验,掌握因果图法生成测试用例的步骤。二、相关内容利用因果图生成测试用例的基本步骤如下:(1)分析软件规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。(2)分析软件规格说明中的语义,找出原因与结果之间、原因与原因之间对应的关系, 根据这些关系画出因果图。(3)由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。(4)把因果图转换为决策表。(
2、5)根据决策表中的每一列设计测试用例。三、实验内容有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:若投入5角钱或1元钱的硬币,押下橙汁或啤酒的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示零钱找完的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示零钱找完的红灯灭,在送出饮料的同时退还5角硬币。编写程序实现之,然后用因果图法对自动售货机设计测试用例并测试之。要求:1、编写程序,实现上述自动售货过程。(任选一种自己熟悉的语言,有无界面均可,实现相应的功能即可。)2、用因果图法设计测试用例。(1)正确画出因果图。 (
3、2)画出决策表。 (3) 给出测试用例。提示:可按如下步骤进行:1)分析这一段说明,列出原因和结果。2)画出因果图。(所有原因结点列在左边,所有结果点列在右边。可以考虑建立中间结点,表示处理的中间状态。比如,可设如下几种中间状态:该找5角,可找5角,按下按钮、钱已付清)3)画出决策表。4)给出测试用例。四、实验报告实验报告提交内容:源程序清单、因果图、决策表。(测试用例有时间就设计,没有时间可以不设计)一,因果图;因果图画条件和结果因果图应该找零钱因果图5角钱付清因果图退还1元判定表去除无效用例合并判定表二, 源程序:#include #include main() float a; int
4、b; float LingQian=50; system(graftabl 936); clrscr(); B: if(LingQian=0) printf(n零钱找完!红灯亮!n); printf(n请投币:n); scanf(%f,&a); if(LingQian=0&a=1) printf(返回1元) ; goto B; ; if(a=0.5|a=1) printf(请选择饮料:n 1为可乐! 2为啤酒!n); scanf(%d,&b); if(a=1&b=1) printf(n可乐 n 找零:0.5元n); LingQian=LingQian-0.5; else if(a=1&b=2) printf(n啤酒 n 找零: 0.5元n); LingQian=LingQian-0.5; else if(a=0.5&b=1) printf(n可乐n); LingQian=LingQian+0.5; else if(a=0.5&b=2) printf(n啤酒 n); LingQian=LingQian+0.5; else goto B; goto B;