测试用例设计—自动售货机因果图分析

(6页)

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

19.90 积分

命题有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。分析根据该命题,我们可以分析出,自动售货机的业务中一共存在5个条件和5个结果,分别是条件1售货机有零钱找2投入1元硬币3投入5角硬币4押下橙汁按钮5押下啤酒按钮结果1售货机〖零钱找完〗灯亮当售货机中没有零钱的时候就有亮红灯2退还1元硬币当投入1元,而且售货机中没有零钱可找的时候3退还5角硬币当投入1元,而且售货机中有零钱可找的时候4送出橙汁饮料5送出啤酒饮料因果图-画条件和结果有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元因果图-画简单关系在画完空白的条件和结果之后,我们可以将题目中最直接和简单的因果条件标出1、条件“有零钱”和结果“红灯亮”是一个“非”的关系,当“有零钱”的时候,红灯是不亮的,而当售货机中“没有零钱”的时候,红灯必须要亮的。2、条件“投1元”和条件“投5角”是一个“E”的关系,这两个动作不可能同时发生,即同时投入1元钱和5角钱(不能同时为真);但是我们允许即“不投入1元钱”也“不投入5角钱”(可以同时为假)。3、条件“选啤酒”和条件“选橙汁”是一个“E”的关系,这两个动作不可能同时发生,即同时“选择啤酒”和“选择橙汁”(不能同时为真);但是我们允许即“不选择啤酒”也“不选择橙汁”(可以同时为假)。4、条件“选啤酒”和条件“选橙汁”对于程序处理过程是等价的,即二者无论是价格还是系统的处理方法都是相同的,因此这两个条件可以合并为一个中间节点。而且这两个条件之间使用“或”的关系。5、注意,条件“投1元”和条件“投5角”不是等价关系,表面上看,他们都是“钱”,好像差不多,但是对于程序的处理过程确实完全不同的,“投5角”后完全不用判断当前售货机中是否有零钱(因为题目中规定所有的商品都是5角钱),而“投1元”就不行了。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品V因果图-送出商品现在我们从结果的角度考虑,要想“出啤酒”或者“出橙汁”,从现实买卖中分析必须要有什么先决条件呢是的,就是“你的钱要付清”,而且你一定要选择了“啤酒”或者“橙汁”才行。而在上面的已有因果图中,我们无法找到“钱付清”的因素,因此这时候我们可以试着再加一个中间节点,就叫“钱付清”吧。要想获得选中的商品,则条件“钱付清”和条件“选啤酒/选橙汁”必须要同时成立,因此是“与”的关系。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVV因果图-应该找零钱根据题意,当投入1元钱,而且又选中了某一种商品的时候,系统是需要找零钱的。而现有条件和结果中并没有涉及到“应该找零钱”这种情况,因此我们还需要增加一个中间节点“应该找零钱”。条件“投1元”和条件(中间节点)“选商品”与结果(中间)“应该找零钱”是“与”的关系,即这两个条件必须同时满足。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVV应该找零钱V因果图-能够找零钱上面已经确定了“投入1元钱”并且“选商品”,系统应该找给客户5角钱,那么接下来就要看当前售货机中是否有零钱可找了,庆幸的是,存在“有零钱”的条件;现在系统“应该找零钱”给客户,而且恰恰又“有零钱”找给客户,那么就可以确定系统“能够找零钱”给客户了,所以这里我们又可以增加一个中间节点“能够找零钱”。条件“有零钱”和条件(中间节点)“应该找零钱”与结果“能够找零钱”之间是“与”的关系。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVV应该找零钱V能够找零钱V因果图-1元钱付清现在已经确定客户“投入1元钱”并且“选商品”后,系统“有零钱”可找,那么紧接着就可以找钱给客户了。条件“能够找零钱”和结果“找5角”是“恒等”的关系;条件“能够找零钱”和结果(中间节点)“钱付清”也是“恒等”的关系;有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVV应该找零钱V能够找零钱V因果图-5角钱付清考虑完投入1元钱后系统的处理情况,我们再来看投入5角钱后系统是如何处理的。因为售货机中的全部商品都是5角钱的,因此就不存在找零的问题了,只要客户“投入5角”并且按下相应的商品选择按钮就好了。所以,条件“投5角”和结果(中间节点)“钱付清”直接是“恒等”的关系。另外,条件“投5角”和条件(中间节点)“能够找零钱”都代表金额的计算已经结束,即“钱付清”,因此条件“投5角”和条件(中间节点)“能够找零钱”与结果(中间节点)“钱付清”之间是“或”的关系。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVV应该找零钱V能够找零钱VV因果图-退还1元我们考虑完了投入5角钱及投入1元钱并找零后,最后在考虑一下退还1元钱的情况。毫无疑问,当投入1元钱,并且选择了某种商品的时候,如果当前售货机中没有零钱可找,那么只能退还用户这1元钱了。因此,条件“没零钱”和条件“应该找零钱”与结果“找1元”之间应该是“与”的关系,而且我们的条件中关于零钱是用了肯定的描述,即“有零钱”,要想表示没有零钱,直接使用一个“非”关就可以了。有零钱选橙汁选啤酒投5角投1元红灯亮出橙汁出啤酒找5角找1元EE选商品钱付清VVVV应该找零钱V能够找零钱VV判定表去除无效用例合并判定表 关 键 词: 测试 设计 自动 售货 因果 分析

 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

软件测试饮料的自动售货机,测试用例设计—自动售货机因果图分析相关推荐

  1. 【黑盒测试用例设计方法4】因果图法及其示例

    [黑盒测试用例设计方法4]因果图法及其示例 因果图可以描述系统的输入和输出的因果关系以及输入和输入之间的约束关系.根据系统输入和输出之间的因果图可以得到判定表,因果图和判定表两种方法经常一起使用. 输 ...

  2. 测试用例设计白皮书--因果图方法

    测试用例设计白皮书--因果图方法Author: Vince      来源:http://blog.csdn.net/vincetest 一.    方法简介 1.定义:是一种利用图解法分析输入的各种 ...

  3. 2020-12-15:【黑盒测试用例设计】测试方法之边界值分析法

    [黑盒测试用例设计]测试方法之边界值分析法 原理: 针对输入或输出范围的边界值进行测试. 通常是针对有效等价类的边界值进行测试. 考虑范围:变量的最大值.最小值.中间值.比最大值大的值.比最小值小的值 ...

  4. 利用场景法设计atm自动取款机的测试用例_atm自动取款机的测试用例

    1. 软件测试用例实例 自动取款机取款用例规约和测试用例 取款用例说明: 此用例完成用户利用自动取款机取款的全部流程,分为以下流程:插卡,输入密码,选择金额,取款,取卡等操作. 事件流: 该用例在用户 ...

  5. 【软件测试】:“用户登录”功能测试用例设计方法

    谈谈登录测试 可能你会说,"用户登录"这个测试对象也有点太简单了吧,我只要找一个用户,让他在界面上输入用户名和密码,然后点击"确 认"按钮,验证一下是否登录成功 ...

  6. 软件测试基础-黑盒测试、白盒测试、测试用例设计

    软件测试的心理学和经济学 软件测试的心理学 测试是为发现错误而执行程序的过程 测试的"成功"与"不成功" 成功:在测试某段程序时发生了错误,这些错误可以修复/本 ...

  7. 软件测试 实验三 白盒测试流程图及测试用例设计

    实验3.白盒测试流程图及测试用例设计 1.实验目的: 1)理解白盒测试原理 2)绘制白盒测试流程图 2.实验方法: 1)绘制流程图 2)设计测试用例 3实验内容: 题目: 算法开始.输入A和B值,首先 ...

  8. 手机软件测试系统,软件测试之手机软件系统测试用例设计方法.doc

    软件零碎测试用例计划举例 目次 TOC\o"1-3"\h\z\uHYPERLINK\l"_Toc117478167"一.等价类剖析法PAGEREF_Toc117 ...

  9. 测试用例设计方法002【边界值分析方法】

    一.方法简介 1.定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法.通常边界值分析法是作为对等价类划分法的补充. 2.边界值与等价类:一个属于确认边界,一个属于确认有有效区间 3. ...

最新文章

  1. linux内存显示3.54g,为什么WDCP/linux服务器内存一直显示几乎用完了
  2. Android Treble 计划技术文档
  3. HDU - 4784 Dinner Coming Soon(bfs+动态规划+优先队列)
  4. 阿里巴巴对Java编程【代码格式】的规约
  5. halcon学习(算子汇总)
  6. 编写可执行程序,其它程序调用,并返回数据,C#
  7. php手机页面中文输出乱码,如何解决php输出中文乱码的问题?
  8. 快速核对两个表格数据
  9. JavaSE(J2SE)入门学习笔记(二)
  10. Esp8266 -- 心知天气get请求及url讲解说明
  11. 华三防火墙h3cf100配置双宽带_华三防火墙H3 F100基本配置说明.doc
  12. scala项目的全局配置实践
  13. Unity-- Gfx.WaitForPresentOnGfxThread占用CPU过高导致帧率低
  14. python+大数据学习打卡day1
  15. 思思的美食笔记--吃哒【自用---随缘更】
  16. 前端开发-后台信息管理页面的开发流程
  17. 超详细!使用HTML、CSS、JavaScript实现倒计时。附加功能——点击页面出现小心心
  18. asp.net(c#)字符串转换成字符数组 字符串转换成int 数组
  19. 小米开源监控系统监控mysql_小米开源监控 Open-Falcon 3.0 部署
  20. 五、K3 WISE 开发插件《直接SQL报表开发新手指导 - BOM成本报表》

热门文章

  1. 根域名服务器和对域名的查找
  2. 宝骏530中控屏怎么安装软件_宝骏530中控屏无反应
  3. 脚本(计算机术语)简介
  4. 判断素数的方法(普通篇)
  5. php 数组排序,php怎么对数组进行排序
  6. python常用操作符_Python3.4学习笔记之常用操作符,条件分支和循环用法示例
  7. leetcode面试题46. 把数字翻译成字符串
  8. 6轴机器人运动学正解,逆解2
  9. 2011年数学建模国赛B题(交巡警服务平台的设置与调度模型)论文.doc
  10. 隆重推介PKS— 部署和运维Kubernetes的强大新方式!