一、需求

设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下:“有一个处理单价为1元5角的盒装饮料的自动售货机软件,若投入1元5角硬币,按下“可乐”、“雪碧”或“红茶”按钮,相应的饮料就送出来。若投入的是2元硬币,在送出饮料的同时退还5角硬币。“
(1) 试利用因果图法,建立该软件的因果图;
(2) 设计测试该软件的全部测试用例。

二、实现

(1) 试利用因果图法,建立该软件的因果图;

​ 1)分析程序规格说明中的原因和结果

原因 结果
c1c1c1:投入1元5角硬币 e1e1e1:送出“可乐”饮料
c2c2c2:投入2元硬币 e2e2e2:送出“雪碧”饮料
c3c3c3:按下“可乐”按钮 e3e3e3:送出“红茶”饮料
c4c4c4:按下“雪碧”按钮 e4e4e4:退还5角硬币
c5c5c5:按下“红茶”按钮

​ 2)画出因果图

状态101010是已投币

状态11是已按按钮

因果图:

(2) 设计测试该软件的全部测试用例。

​ 3)将因果图转换成如下所示的决策表

选择 / 规则 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
条件:
c1c1c1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 0 0 1
c2c2c2 1 1 1 1 0 1 1 1 0 1 1 0 1 0 1 0 1
c3c3c3 1 1 1 0 1 1 1 0 1 1 0 1 1 0 0 1 0
c4c4c4 1 1 0 1 1 1 0 1 1 1 0 0 0 1 1 1 0
c5c5c5 1 0 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0
10 1 1 1 1 1 1 1 1
11 1 1 1
动作:
e1e1e1
e2e2e2
e3e3e3
e4e4e4
不可能 √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√
测试用例
选择 / 规则 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
条件:
c1c1c1 0 1 1 1 0 0 1 0 0 0 0 0 0 0 0
c2c2c2 1 0 1 0 1 0 0 1 0 0 1 0 0 0 0
c3c3c3 1 1 0 0 0 1 0 0 1 0 0 1 0 0 0
c4c4c4 0 0 0 1 1 1 0 0 0 1 0 0 1 0 0
c5c5c5 0 0 0 0 0 0 1 1 1 1 0 0 0 1 0
10 1 1 1 1 1 1 1
11 1 1 1 1 1 1 1 1 1
动作:
e1e1e1 √\surd√ √\surd√
e2e2e2 √\surd√ √\surd√
e3e3e3 √\surd√ √\surd√
e4e4e4 √\surd√ √\surd√ √\surd√
不可能 √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√ √\surd√
测试用例 1 2 3 4 5 6

​ 4)根据决策表中的每一列设计测试用例

测试用例编号 输入数据 预期输出
1 投入2元硬币,选择“可乐” 送出"可乐",并退还5角硬币
2 投入1元5角硬币,选择“可乐” 送出"可乐"
3 投入1元5角硬币,选择“雪碧” 送出"雪碧"
4 投入2元硬币,选择“雪碧” 送出"雪碧",并退还5角硬币
5 投入1元5角硬币,选择“红茶” 送出"红茶"
6 投入2元硬币,选择“红茶” 送出"红茶",并退还5角硬币

利用因果图法对一个自动饮料售货机软件进行黑盒测试相关推荐

  1. 黑盒测试——自动饮料售货机

    问题描述 设要对一个自动饮料售货机软件进行黑盒测试.该软件的规格说明如下:"有一个处理单价为1元5角的盒装饮料的自动售货机软件,若投入1元5角硬币,按下"可乐".&quo ...

  2. 设计c语言自动售货机源程序,自动饮料售货机源程序C语言编程

    采用C语言编程的自动饮料售货机源程序 #include #include #include class goodsinfo { public: char *name; float price; int ...

  3. 基于三菱PLC的饮料售货机控制系统设计

    目 录 摘要 I Abstract II 1 绪论 1 1.1研究背景及意义 1 1.2自动售货机的简介 1 1.2.1自动售货机的发展历史 1 1.2.2自动售货机的定义 2 1.2.3自动售货机的 ...

  4. 因果图法测试实例:一个处理单价为1元5角钱的盒装饮料的自动售货机软件。

    因果图法测试知识回顾​​​​​​​ 实例分析 产品说明书:有一个处理单价为1元5角钱的盒装饮料的自动售货机软件.若投入1元5角硬币,按下"可乐"."雪碧".或& ...

  5. php微信自动登录,利用php怎么实现一个自动登录微信并获取昵称的功能

    利用php怎么实现一个自动登录微信并获取昵称的功能 发布时间:2021-02-18 14:55:53 来源:亿速云 阅读:58 作者:Leah 这篇文章将为大家详细讲解有关利用php怎么实现一个自动登 ...

  6. 利用区域生长法绘画一个白色矩形框

    首先简单介绍一下数字图像处理中的区域生长法 在应用区域生长法时,需要考虑三个问题 1.种子像素是哪些或者哪一个 选择和确定一组能够代表种子像素的一般原则为: (1)接近聚类中心的像素可以作为种子像素 ...

  7. 软件测试作业8:分析自动售货机软件例子生成的判定表图例

    作业8 1.分析 Chap.5 (Lec.19) 自动售货机软件例子生成的判定表图例的第6列和第23列,分别给出: (1).输入条件的自然语义陈述: (2).输出结果的自然语义陈述: (3).用命题逻 ...

  8. 饮料售货机——状态机

    设计一个自动饮料售卖机,饮料10分钱,硬币有5分和10分两种,并考虑找零. 假设fen_5表示5分线,fen_10表示10分钱,out表示出饮料,remain表示找零,故状态机需要3个状态,分别为S0 ...

  9. 果汁机器人传销_自动果汁售货机怎么样 加盟靠谱吗

    我们在商场里,经常看到每个楼层,经常可以看到,有一些自动的果汁自动售货机,对于很多人来说,想要加盟,觉得自己对于果汁自动售货机,可能没有很深的认识,自动果汁售货机加盟怎么样?加盟靠谱吗?是很多投资商的 ...

最新文章

  1. 基于圆形标定点的相机几何参数的标定
  2. Java编写的五子棋小游戏
  3. SQL基础【十八、事物】(sql事物慎用,还是写业务逻辑代码好一些,入伙涉及到更换数据啥的很麻烦!)
  4. linux下des加密命令,linux下的DES加密
  5. safari浏览器的使用tips
  6. leetcode109. 有序链表转换二叉搜索树(递归)
  7. android不能在主线程,安卓开发:主线程真的不能做UI操作吗?这一点很多程序员都没想到...
  8. 这些基因的名字太有才了,研究一下都可以发10分文章
  9. 如何使用MySQL进行备份?
  10. python最大公约数计算。从键盘接收两个整数_python如何求解两数的最大公约数
  11. 理解Active Directory中用户登录的具体行为
  12. CSDN前200名博主
  13. 五笔字根表识别码图_五笔字根识别码学习
  14. MySQL子查询(嵌套查询)-----详细
  15. python 拼图验证码
  16. Pygame实战:多年后“魂斗罗”像素风归来 不止是经典与情怀@全体成员
  17. 不看不知道 轿车制造成本大揭密
  18. 基于springboot对接芯烨云无线打印机(非云打印机)
  19. FinClip程序员生活指南|如何“反脆弱”的过好一个低碳生活
  20. 20 | 面向流水线的指令设计(上):一心多用的现代CPU

热门文章

  1. NI-​DAQmx​的​定​时​和​同步​特性
  2. xmos固件u8_XMOS USB数字界面 模块 XU208 U8升级版CPL
  3. 1.MySQL增删改查(初阶)
  4. 【092】召唤神龙-指尖大鱼吃小鱼的魔性游戏
  5. 滴滴-2019+快手2020(A)-校园招聘算法工程师笔试题
  6. 李永辉:IBM大数据产品及实践路线图
  7. php小于neq qe,ThinkPHP eq neq if 标签
  8. SAP那些事-职业篇-2-AI能不能替代SAP顾问
  9. 基于tp5的免费开源企业官网系统
  10. 五分钟内用Python实现GitHook