软件测试与管理:黑盒测试-因果图法和场景法

知识思维导图:

​​​​​​​

例题1:运用因果图法设计测试用例

有一个处理单价为5角钱的饮料的自动售货机软件测试用例的设计。其规格说明如下:

  • 若投入5角钱或1元钱的硬币,按下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。
  • 若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并按下按钮后,饮料不送出来而且1元硬币也退出来;
  • 若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。

1.分析这一段说明,列出原因和结果

C1

投入5角钱

E1

送出〖橙汁〗饮料

C2

投入1元钱

E2

送出〖啤酒〗饮料

C3

按下〖橙汁〗按钮

E3

〖零钱找完〗红灯亮

C4

按下〖啤酒〗按钮

E4

退出1元硬币(不送出饮料)

C5

售货机没零钱

E5

退还5角硬币(送出饮料)

2.画出因果图,所有原因结点列在左边,所有结果结点列在右边。建立中间结点,表示处理的中间状态

3.将因果图转换成判定表:25=32

从因果图导出的判定表

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

输入

投入5角钱

C1

1

1

1

1

0

0

0

0

0

0

0

0

1

1

0

0

投入1元钱

C2

0

0

0

0

1

1

1

1

0

0

0

0

0

0

1

1

按下〖橙汁〗按钮

C3

1

1

0

0

1

1

0

0

1

1

0

0

0

0

0

0

按下〖啤酒〗按钮

C4

0

0

1

1

0

0

1

1

0

0

1

1

0

0

0

0

售货机没有零钱

C5

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

中间节 点

已投币

D1

1

1

1

1

1

1

1

1

0

0

0

0

1

1

1

1

已按钮

D2

1

1

1

1

1

1

1

1

1

1

1

1

0

0

0

0

有零钱找

D3

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

输出

送出〖橙汁〗饮料

E1

1

1

0

0

1

1

0

0

1

1

0

0

0

0

0

0

送出〖啤酒〗饮料

E2

0

0

1

1

0

0

1

1

0

0

1

1

0

0

0

0

〖零钱找完〗红灯亮

E3

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

退出1元硬币(不送出饮料)

E4

0

0

0

0

1

0

1

0

0

0

0

0

0

0

1

0

退还5角硬币(送出饮料)

E5

0

0

0

0

0

1

0

1

0

0

0

0

0

0

0

1

4. 设计用例 

用例ID

功能模块

测试输入

执行步骤

预期输出

实际输出

缺陷ID

用例1

自动售货机软件

5角

橙汁按钮

C1,C3,D1,D2,E1

送出橙汁

送出橙汁

用例2

自动售货机软件

5角

啤酒按钮

C1,C4.D1.D2.E2

送出啤酒

送出啤酒

用例3

自动售货机软件

1元

橙汁按钮

C2,C3,D1,D2,E5

送出橙汁

退还5角硬币

送出橙汁

退还5角硬币

用例4

自动售货机软件

1元

啤酒按钮

C2,C4.D1.D2.E5

送出啤酒

退还5角硬币

送出啤酒

退还5角硬币

用例5

自动售货机软件

5角

C1

提示操作未完成

提示操作未完成

用例6

自动售货机软件

1元

C2

提示操作未完成

提示操作未完成

用例7

自动售货机软件

橙汁按钮

C3

提示操作未完成

提示操作未完成

用例8

自动售货机软件

啤酒按钮

C4

提示操作未完成

提示操作未完成

用例9

自动售货机软件

没有零钱

1元

橙汁按钮

C2,C5,C3,D1,D2,E4

没有饮料送出退还硬币并亮红灯

没有饮料送出退还硬币

用例10

自动售货机软件

没有零钱

1元

啤酒按钮

C2,C5,C4,D1,D2,E4

没有饮料送出退还硬币并亮红灯

没有饮料送出退还硬币

用例11

自动售货机软件

没有零钱

橙汁按钮

C4,C5

提示要进行投币操作并亮红灯

提示要进行投币操作并且没有注意此时零钱

用例12

自动售货机软件

没有零钱

啤酒按钮

C3,C5

提示要进行投币操作并亮红灯

提示要进行投币操作并且注意此时没有零钱

用例13

自动售货机软件

没有零钱

5角

啤酒按钮

C5,C1,C4,D1,D2,E2

送出啤酒,并亮红灯

送出啤酒,同时提示没有零钱

用例14

自动售货机软件

没有零钱

5角

橙汁按钮

C5,C1,C4,D1,D2,E1

送出橙汁,并亮红灯

送出橙汁,同时提示没有零钱

用例15

自动售货机软件

5角

没有零钱

C1,C5

提示要进行按钮操作并亮红灯

提示要进行按钮操作并注意此时没有零钱

用例16

自动售货机软件

1元

没有零钱

C2,C5

提示要进行按钮操作并亮红灯

提示要进行按钮操作并注意此时没有零钱

例题2:ATM的转账或存钱业务流的场景法设计测试用例

1. 画出你知道的基本流和备选流;

基本流和备选流

基本流

在ATM机上进行转帐/存钱,插卡,输入密码,选择取款金额/放入钞票,点击确认按钮,存取款成功,选择是否打印业务单,退卡

备选流1

密码输入错误

备选流2

存款不足

备选流3

ATM出现吞卡故障

备选流4

钞票识别错误

备选流5

ATM机无法使用

备选流6

ATM机不支持该银行卡

2.列出你认识的所有场景;

场景设计

场景

路径

场景1:存/取款成功

基本流

场景2:密码输入错误

基本流

备选流1

场景3:取款余额不足

基本流

备选流2

场景4:无法退卡

基本流

备选流3

场景5:钞票识别错误无法存入

基本流

备选流4

场景6:无法操作使用ATM机

基本流

备选流5

场景7:ATM机插卡失败

基本流

备选流6

3.根据场景列出测试用例表。

测试用例

用例ID

场景/条件

密码

卡号

金额

预期结果

1

场景1:存/取款成功

V

V

V

操作成功

2

场景2:密码输入错误

I

V

V

提示“密码错误”

3

场景3:取款余额不足

V

V

I

提示“余额不足”

4

场景4:无法退卡

V

V

V

操作成功,但退卡失败,要联系人工客服解决

5

场景5:钞票识别错误无法存入

V

V

I

提示“重新放入钞票”

6

场景6:无法操作使用ATM机

n/a

n/a

n/a

无法操作,换机器

7

场景7:ATM机插卡失败

n/a

n/a

n/a

无法操作,换银行

ps:V-表示有效的数值;I-表示无效的数值;N/A表示不适用;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/7341.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码随想录算法训练营第四十六天|LeetCode139.完全平方数

LeetCode 139 完全平方数 题目链接:139. 单词拆分 - 力扣(LeetCode) 【解题思路】 1.确定dp数组以及下标含义 dp[j]的定义是: 字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词…

[方法] Unity 实现仿《原神》第三人称跟随相机 v1.1

参考网址:【Unity中文课堂】RPG战斗系统Plus 在Unity游戏引擎中,实现类似《原神》的第三人称跟随相机并非易事,但幸运的是,Unity为我们提供了强大的工具集,其中Cinemachine插件便是实现这一目标的重要工具。Cinemachi…

4步快速配置Java和MySQL环境

每次入职一家新公司或者用一台其他的临时电脑或者新电脑时都要重新配置Java开发环境,很麻烦,因此我在这里记录一下快速配置环境的方式,四步搞定!此处以win为操作系统进行讲解。 第一步:下载链接 下载链接&#xff1a…

二叉树1:二叉树的基本运算

1. (简答题) 编写一个程序,实现二叉树的基本运算,具体要求如下:(指定示范实例1:P243图7.34。指定示范实例2:P201图7.13 ) 1,括号表示法输出该树。 2,输入一个结点的值&…

04.1.添加多个监控同步其他主机

添加多个监控&同步其他主机 1.首先在agent配置文件中存在Include的,也就是说明,可以配置多个监控项并且同步到其他主机上的进行使用; 2.主机之间互相推送配置文件即可; 开始测试 我这里实在agent节点上直接在路径/etc/zabbi…

Go实现树莓派控制舵机

公式说明 毫秒(ms)是时间的单位,赫兹(Hz)是频率的单位,而DutyMax通常是一个PWM(脉冲宽度调制)信号中表示最大占空比的值。以下是它们之间的关系和一些相关公式: 频率&…

Python内置函数min()详解

Python中的min()函数是一个内置函数,用于找出给定参数或可迭代对象中的最小值。 函数定义 min()函数可以有两种不同的使用方式: min(iterable, *[, defaultobj, keyfunc]) min(arg1, arg2, *args[, keyfunc])iterable:一个可迭代对象。def…

设计模式之建造者模式BuilderPattern(七)

一、建造者模式 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 二、代码实例 1、OrderItem类 Data:这是Lombok中提供的Ge…

【linux软件基础知识】-cdev_alloc

struct cdev *cdev_alloc(void) {struct cdev *p = kzalloc(sizeof(struct cdev), GFP_KERNEL);if <

并发编程陷阱:32位CPU下long写操作的线程安全漏洞

1. 现象描述 1.1 Bug问题简述 在多线程环境下操作共享数据时&#xff0c;往往面临各种并发问题。其中&#xff0c;一种常见的情况是&#xff0c;即使一段代码在单线程下执行没有问题&#xff0c;当它在多线程环境下执行时&#xff0c;却可能由于线程安全问题导致意想不到的Bu…

ADS过孔---过孔建模自动化

当前快速建模的方法有两类&#xff1a;一是脚本自动化&#xff0c;也就是今天要分享的方法&#xff0c;但该方法需要工程师有基本的脚本编辑能力&#xff0c;然后根据自己的需要去修改&#xff0c;难度较大一点点&#xff1b;二是参数化建模&#xff0c;也就是在GUI界面输入相应…

百度语音识别开发笔记

目录 简述 开发环境 1、按照官方文档步骤开通短语音识别-普通话 2、创建应用 3、下载SDK 4、SDK集成 5、相关接口简单说明 5.1权限和key 5.2初始化 5.3注册回调消息 5.4开始转换 5.5停止转换 6、问题 简述 最近想做一些语音识别的应用&#xff0c;对比了几个大厂…

华为手机连接电脑后电脑无反应、检测不到设备的解决方法

本文介绍华为手机与任意品牌电脑连接时&#xff0c;出现连接后电脑无反应、检测不到手机连接情况的解决方法。 最近&#xff0c;因为手机的存储空间愈发紧缺&#xff0c;所以希望在非华为电脑中&#xff0c;将华为手机内的照片、视频等大文件备份、整理一下。因此&#xff0c;需…

aardio爬虫) 实战篇:逆向有道翻译web接口

前言 之前的文章把js引擎(aardio封装库) 微软开源的js引擎(ChakraCore))写好了&#xff0c;这篇文章整点js代码来测一下bug。测试网站&#xff1a;https://fanyi.youdao.com/index.html#/ 逆向思路 逆向思路可以看有道翻译js逆向&#xff08;MD5加密&#xff0c;AES加密&…

cmake进阶:定义函数的内部变量

一. 简介 前一篇文章学习 cmake中的定义函数基本用法。文章如下&#xff1a; cmake进阶&#xff1a;定义函数的使用方法-CSDN博客 本文继续学习 cmake中的定义函数&#xff0c;主要学习函数的内部变量。 二. cmake进阶&#xff1a;定义函数的内部变量 上一篇文章说过&…

Elasticsearch:理解人工智能相似性搜索

理解相似性搜索&#xff08;也称为语义搜索&#xff09;的指南&#xff0c;这是人工智能最新阶段的关键发现之一。 最新阶段人工智能的关键发现之一是根据相似性搜索和查找文档的能力。相似性搜索是一种比较信息的方法&#xff0c;其基于含义而非关键字。 相似性搜索也被称为语…

Stable Diffusion学习记录

文章目录 前言电脑配置推荐环境搭建下载地址安装步骤步骤一&#xff0c;打开下载的秋叶整合包&#xff0c;路径秋叶整合包/sd-wenui-aki步骤二&#xff0c;打开下载好的sd-webui-aki-v4.8.7解压包 Stable Diffusion软件配置&#xff0c;插件安装&#xff0c;模型下载Stable Dif…

从ETL与ELT谈起,理解数仓的任务

最近有个朋友&#xff0c;有几十 PB 的异构数据&#xff0c;数据源包括 MySQL、DB2、Oracle、CSV、磁带机&#xff0c;等等&#xff0c;然后他需要把这些数据中的一些信息做关联整合&#xff0c;从这几十 PB 的数据中提取出若干业务字段到数据仓库&#xff0c;做统一分析。 数…

Codeforces Round 943 (Div. 3) C-G

C. Assembly via Remainders 思路&#xff1a; 我们可以注意到&#xff0c;数组的长度只有 500 500 500 &#xff0c;并且每个数的大小都在 500 500 500 以内&#xff0c;再看向这题&#xff0c;容易知道&#xff0c;当第一个数确定之后&#xff0c;之后所有的数字都会确定下…

uniapp自定义websocket类实现socket通信、心跳检测、连接检测、重连机制

uniapp自定义websocket类实现socket通信、心跳检测、检测连接、重连机制&#xff0c;仿vue-socket插件功能实现发送序列号进行连接检测&#xff0c;发送消息时42【key,value】格式&#xff0c;根据后端返回数据和需要接收到的数据做nsend与onSocketMessage的修改 import {publ…