软件测试-自动售货机测试报告

2024-02-08 13:40

本文主要是介绍软件测试-自动售货机测试报告,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、设计的背景:
1.题目:
自动售货机
处理单价为5角钱的饮料自动售货机软件的规格说明:
投入5角或1元的硬币,压下[橙汁]或[啤酒]的按钮。
如果投入1元硬币并压下按钮后,若售货机没有零钱找,则[零钱找完]红灯亮,饮料不送出并将1元硬币退出来。
若有零钱找,则[零钱找完]红灯灭,送出饮料同时还退还5角硬币。
2.设计思路和测试方法分析:
决策表最突出的优点是,它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解同时避免纰漏。同时既考虑数据又考虑逻辑依赖关系,所以选择了决策表技术,因为边界值测试方法不考虑数据或逻辑依赖关系。
在这里插入图片描述
(1)分析自动售货机软件的规格说明,找出原因和结果。
原因:c1:投入5角硬币
c2:投入1元硬币
c3:压下橙汁
c4:压下啤酒
c5:售货机有零钱
c6:售货机没有零钱

结果:e1:送出橙汁
e2:送出啤酒
e3:退还5角硬币
e4:退还1元硬币
e5: [零钱找完]红灯灭:
e6:[零钱找完]红灯亮

(2)找出原因与结果之间的因果关系、原因与原因之间的约束关系,画出因果图。
讲原因和结果用相应的逻辑符号连接起来,可得到其因果图,其中10中间的结点是导出结果的进一步原因。因为原因c1和 c2、c3和c4不可能同时为1,即第一个操作不能是即投入5角并压下按钮又投入1元并压下按钮,第二个操作不能是即按压下橙汁按钮又按下啤酒按钮,因此在因果图上可对其施加E约束,这样便可得到了具有约束得因果图,如1.0所示。

(3)将因果图转化成决策表。
根据因果图建立其第一次试用决策表,共有如下表所示。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
通过上述的64个规则,我们发现存在大量不符合条件的规则,我们把这些不符合条件的规则中两条规则的动作项相同,则至少有一个条件能够把两条规则用不关心条件合并,建立一个突出不符合规则的表
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在接下来的规则中凡是出现以上类似的规则,都会被判定为不可能。

通过上述的两种测试的表,我们得出下列简化后的决策表。
在这里插入图片描述
二.使用测试用例完成测试:
结合以上的决策表,设置测试用例如下表所示:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
三.结论:
在这次自动售货机的测试中,我们可以知道在这种较为复杂的问题上,根据因果图建立决策表这种方法非常有效,它能够帮助我们检查输入条件的组合,设计出非冗余,高效的测试用例,比如这次测试中,把64个测试规则简化到27个测试规则,有效的检测出自动售货机在实际运用中可能会出现的问题。从这次实验中,我相信在今后的测试工作中,运用根据因果图建立决策表这种方法能够更高效,更科学的进行软件测试工作。

这篇关于软件测试-自动售货机测试报告的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/691201

相关文章

软件测试之压力测试知识总结

软件测试之压力测试知识总结 一、压力测试概述 压力测试(Stress Testing)是软件测试中的一种重要手段,用于验证软件应用程序在极端负载条件下的稳定性和可靠性。其主要目的是在软件承受极高负载时,测量其健壮性、错误处理能力和恢复能力,确保软件在危急情况下不会崩溃或表现异常。压力测试也被称为耐力测试,在软件工程中占有举足轻重的地位。 1.1 压力测试的目的 压力测试的主要目的包括:

软件测试中常用的linux命令总结

1、修改ssh登陆密码命令:passwd 2、新建一个名字为dbuser的Linux新用户:(sudo adduser dbuser) 4、./frps -c ./frps.ini(FRP启动命令) 5、lsof -i:7500(监听端口) 6、sh reload.sh master(文件后缀为sh时,nginx启动命令);( 文件为执行文件启动命令:./nginx -s reload) 7、sh

软件测试永远的家——银行测试,YYDS

为什么做金融类软件测试举个栗子,银行里的软件测试工程师。横向跟互联网公司里的测试来说,薪资相对稳定,加班少甚至基本没有,业务稳定。实在是测试类岗位中的香饽饽! 一、什么是金融行业 金融业是指经营金融商品的特殊行业,它包括银行业、保险业、信托业、证券业和租赁业 往往涉及证券、银行、基金、信托、保险、投行、期货等领域 二、金融行业的业务特点 随着金融行业的业务不断增加,金融交易模式的不断变化,

软件测试学习笔记丨Pytest的使用

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/22158 1. 简介 pytest是一个成熟的全功能python测试框架测试用例的skip和xfail,自动失败重试等处理能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动化测试,接口自动化测试pytest有很多第三方插件,并且可以自定义扩展,如pytest-

【软件测试】设计测试用例

📕引言 本文章重点目标: 测试用例的概念 设计测试用例的万能思路 设计测试用例的方法 ◦ 基于需求的设计方法◦ 具体的设计方法 ▪ 等价类 ▪ 边界值 ▪ 判定表法 ▪ 正交法 ▪ 场景法 ▪ 错误猜测法 🍀测试用例 🚩概念 什么是测试用例? 测试用例(TestCase)是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要

软件测试学习笔记丨Linux-Bash编程语法

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32091 一、Bash编程基础 1.1 变量 1.1.1 语法 Variable_name=value 1.1.2 变量定义的规则 变量名区分大小写,a和A为两个不同的变量;变量名可以使用大小写字母混编的形式进行编写;变量名与值之间的=两侧都不能有空格;在读取或打印变量时,需使用$+变量名;

第八章 软件测试简记

第八章  软件测试 软件测试:在软件投入运行前对软件需求分析、软件设计规格说明和软件编码进行差错和纠正。 软件测试的目标: 1.用最少的人力、时间找出软件潜在的各种错误和缺陷; 2.能够确认软件实现的功能和用户需求上是一样的; 3.能够收集到足够的测试结果为软件可靠性提供依据; 软件测试的任务:根据软件开发各个阶段的文档资料和程序的内部结构,精心设计

【软件测试】软件测试-----什么是Bug?Bug是如何分级的?Bug的生命周期是怎样的?如何描述一个Bug?

博客目录 一.软件测试的生命周期二.BUG的定义和级别2.1 bug的概念.2.2 如何描述一个bug.2.3bug的级别2.3.1 bug分级的意义.2.3.2 bug的四种级别. 三.BUG的生命周期.四.当与开发人员发生冲突该如何处理(高频面试)五.总结 一.软件测试的生命周期 软件测试贯穿于软件的整个生命周期,针对这句话我们一起来看一下软件测试是如何贯穿软件的整个生命周

Newman生成测试报告排版混乱

问题:样式文件错误 解决方法:修改bootstrap样式文件的路径 <link rel="stylesheet" href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/5.3.1/css/bootstrap.min.css">

【软件测试专栏】自动化测试函数篇

博客主页:Duck Bro 博客主页系列专栏:软件测试专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ 自动化测试函数篇 关键词:函数、浏览器参数、常用函数、元素定位 目录 自动化测试函数篇一、元素定位函数1. cssSelector2. xpath 二、操作函数1. 点击/提交(按钮)2. 模拟按键输入(文本框输入)3. 清楚