史上最详细黑盒测试用例方法总结(等价类、边界值、因果图等)

2023-11-12

黑盒测试用例设计方法

一、等价类

等价类划分法原理

1、把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据作为测试用例

2、每一类的代表性数据在测试中的作用等价于这一类中的其他值,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误。

3、反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误

等价类划分的原则:

1、例如:一个文本框规定,输入字符个数为6-18位

一个有效等价类:范围内个数

两个无效:小于6;大于18个

2、例如:请输入11位手机号

11位就是有效

不是11位就是无效

3、布尔量:表示“真”或者“假”

4、例如:登录中要输入用户名和密码

二、边界值分析法

边界值本身只是一个特定的数据,例如:文本框需要输入6-18位字符。

边界值有:

1)6个字符

2)18个字符

次边界:边界附近的值,按照系统规定的单位或者计算方法,一个数据的差异。

思考:

1)6≤x≤12,请问测试中x的边界值要选取哪几个进行测试?

2)6<x<12,请问测试中x的边界值要选取哪几个进行测试?

此时6和12是无效数字了,在边界外

3)文本框输入字符的个数要求是不大于150字。测试的时候如何选择边界值

三角形测试用例设计

等价类设计

在这里插入图片描述

测试用例

在这里插入图片描述

三、因果图法

因果图法是一种适合于描述对于多种输入条件组合的测试方法

根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法

它适合于检查程序输入条件涉及的各种组合情况。

1、原因和结果的关系

(1)恒等,原因A成立,结果B一定成立。

(2)非。原因A成立时,结果B一定不成立。

(3)或。原因A,B,C三者只要有一个成立,结果D就一定成立。

(4)与。原因A,B,C都成立,结果D才会出现。

2、原因之间的约束 。 假如原因成立用1表示;不成立用0表示。

(1)互斥(edusive)。也就是A+B+C≤1

(2) 包含(include)。3≥A+B+C≥1

(3)唯一(only)。A+B+C==1

(4)要求(request)。原因A成立,要求B一定先成立。

3、结果之间的约束。 假如结果成立用1表示;不成立用0表示。

(1)屏蔽。结果之间会出现A结果出现,B结果一定不出现。

在这里插入图片描述

因果图法实例

案例:有一个饮料自动售货机(处理单价为5角钱)的控制处理软件,它的软件规格说明如下。

若投入5角钱的硬币,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。

若投入1元钱的硬币,同样也是按“橙汁”或“啤酒”的按钮,则自动售货机在送出相应饮料的同时退回5角钱的硬币

分析原因和结果:

在这里插入图片描述

画出原因结果图:

在这里插入图片描述

这里注意:因果图使用中的局限性:当原因和结果很多的时候,他们之间的关系连线就会很多,导致因果图的可读性变差,因此用作局部的小功能分析。

在这里插入图片描述

进行测试用例设计:

在这里插入图片描述

四、正交实验法

  • 日本人,统计学家提出

  • 使用的工具:正交表

  • 统计和分析实验数据,从大量实验中找到合适的实验数据组合。

  • 大量的实验中,挑选出来一部分具有代表性的点,进行试验,分析数据。

  • 涉及到的数学原理:《线性代数》、《概率论》、《数理统计》

  • 核心概念:

    1)影响实验结果的–实验因素(因子)、因素

    2)每一个因素的不同取值(状况)–水平

    ​ 例如,字的显示效果–字体、字号、颜色的称为因素

    ​ 字体选择时,可以选择宋体、楷体、微软雅黑------称为水平。

    ​ 字号选择时,-------称为水平

    3)正交表特点:每列中,同一个数字(水平),出现的次数相等;任意两列组成的数字对(水平对)出现的次数也是相同的。

实施步骤:

(1)分析所有对结果有影响的因素。从多个角度和方式进行分析(不要放过文本框、按钮等需求中提及或者没有提及)

(2)分析每个因素的水平数量。充分利用等价类、边界值(需求中说明和未说明的都要分析)

(3)选择正交表。只有特定的因素数和水平数的组合才有对应的正交表。所以在现实中用到的时候,找最贴近的正交表(正交表的因素数和水平数一般要大于实际的因素数和水平数

  • 正交表的数字关系(N代表实验次数,m代表水平数,k因素的数量,这三个数字之间没有任何数学关系
  • 仅适合用于每一个因素的水平数都相同的正交集。

有一个工业产品,生产工艺受到操作方式、温度、洗涤时间三个因素,并且每个因素都有三种可能的取值,设计实验组合。

因素 操作方式 温度(℃) 洗涤时间(min)
A 60 15
B 80 20
C 100 25

完全排列组合:3✖3✖3=27

所在列 1 2 3
因素 操作方式 温度 洗涤时间 实验结果
实验1 A 60 15
实验2 A 80 20
实验3 A 100 25
实验4 B 60 15
实验5 B 80 20
实验6 B 100 25
实验7 C 60 15
实验8 C 80 20
实验9 C 100 25

每一列中,同一个数字出现的次数相等(3次)

任意两列中同一个数字对出现的次数相等(1次)

用了等价类的思想!!!

五、场景法

重点:

基本流(软件功能正确实现的流程)

备选流(基本功能流程之外的过程)

注意:

1、场景中必须有基本流

2、场景中必须有内容从用例的开始,到用例的结束。

案例:ATM机的取款流程

基本流:

在这里插入图片描述

基本流:插卡-输入-密码-出钞-取卡

包含了备选流的过程:

在这里插入图片描述

备选流:

1、卡片不是银行卡

2、卡片不是某行卡

3、密码输错一次

4、密码输错两次,第三次输入正确

5、密码输入错误三次,冻结账号或者吞卡

6、选择存款服务

7、选择查询服务

8、选择转账服务

9、选择修改密码服务

10、选择取款金额

11、选择其他金额

12、账户金额

13、ATM机没钱了

14、账户取款金额达到取款机当日的取款上限

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

史上最详细黑盒测试用例方法总结(等价类、边界值、因果图等) 的相关文章

  • const、指针、引用的关系

    const 指针 引用的关系 const 与指针 const 与引用 const 与指针 引用 const 与指针 我们写一段代码来探究以下 int a 10 b 20 int p1 a p1 100 p1 b const int p2 a
  • 基本类型、包装类型与自动拆装箱

    Java的8种数据类型 Java 的每个基本类型都对应了一个包装类型 比如说 int 的包装类型为 Integer double 的包装类型为 Double 基本类型 包装类 boolean Boolean byte Byte short

随机推荐

  • 最适合练手的第一个Qt小程序,所有代码均可复制

    文章目录 前言 一 最适合新手的第一个Qt小程序 1 1 按钮的创建 1 2 对象模型 对象树 二 Qt窗口坐标体系 三 信号和槽机制 3 1 系统自带的信号和槽 3 2 自定义信号和槽 3 3 信号槽的扩展 3 4 Qt4版本的信号和槽写
  • JWT Token 的构成以及生成过程

    一 jwt token 是什么样子的 JWT是由三段信息构成的 将这三段信息文本用点链接一起就构成了Jwt字符串 JWT字符串 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9 eyJzdWIiOiIxMjM0NTY
  • 06-1_Qt 5.9 C++开发指南_对话框与多窗体设计_标准对话框

    在一个完整的应用程序设计中 不可避免地会涉及多个窗体 对话框的设计和调用 如何设计和调用这些对话框和窗体是搞清楚一个庞大的应用程序设计的基础 本章将介绍对话框和多窗体设计 调用方式 数据传递等问题 主要包括以下几点 Qt 提供的标准对话框的
  • 给定一个非负整数数组,你最初位于数组的第一个位置... --错误方法纠正

    力扣55题 闹心 太闹心了 上周空闲时间写了一个自动钻取的 结果发现把0搞进去之后各种问题 房子越补漏雨越大 刚才琢磨了一下 真的是方向错了 先来聊聊之前的方案 以此数组为例 int nums 2 1 1 1 3 lastIndex num
  • 最新deepin-wine下微信的安装方法,非常简单 Ubuntu linux可用

    deepin wine阿里云镜像访问异常 可以使用以下脚本安装最新版deepin wine 微信最新版本 deepin com wechat 2 6 8 65deepin0 i386 deb 下载网址 Index of deepin poo
  • 数据结构与算法目录

    前言 数据结构与算法系列先看这里 有助于你更好地获取内容 首先明白一个问题 为什么要研究数据结构 这是因为所有的程序本质上是对数据进行处理 如何高效的处理数据 这依赖于数据本身的结构 如类型 整型 浮点型等 维数 是否为复杂类型 结构体类型
  • 常用Python PDF库对比

    2022 06 07修订 新增第三方库borb 初稿写于2021 01 02 彼时borb才发布1 0版没几个月 两年不到 Github上已近三千赞 PDF Portable Document Format 是一种便携文档格式 便于跨操作系
  • 故障树

    故障树 时间20210105 可以根据这道题目学习故障树 假设系统的可靠性逻辑框图如下所示 故障树的定义 用以表明产品哪些组成部分的故障或外界事件或它们的组合将导致产品发生一种给定故障的逻辑图 故障树是一种逻辑因果关系图 构图的元素是事件和
  • Keil编译错误error: #20: identifier "XXXX" is undefined

    问题 在使用Keil编译工程时 经常遇到提示identifier XXXX 未定义的error信息 Build target canopen mx v1d61 compiling main c Src main c 104 warning
  • SMT贴片制造:发挥的作用和价值]

    SMT贴片制造作为一项重要的电子制造技术 发挥着举足轻重的作用 并提供了巨大的价值 首先 SMT贴片制造为电子产品的制造商提供了高效 准确和可靠的生产方式 相比于传统的手工焊接 SMT贴片制造具有更高的自动化和智能化程度 大幅提高了生产效率
  • day21网络编程(下)

    day21 网络编程 下 课程目标 学会网络编程开发的必备知识点 今日概要 OSI7 层模型 TCP和UDP 粘包 阻塞和非阻塞 IO多路复用 1 OSI 7层模型 OSI的7层模型对于大家来说可能不太好理解 所以我们通过一个案例来讲解 假
  • 安装【sonar】【sonarQube】免费社区版9.9

    文章目录 sonarQube 镜像容器 Linux 安装镜像 出现 Permission denied的异常 安装sonarQube 中文包 重启服务 代码上传到sonarQube扫描 java语言配置 配置 JS TS Php Go Py
  • gitee项目克隆到本地并运行

    首先电脑上要先安装node js和git 配置一下 在gitee上找到需要克隆到本地的项目 点击克隆 下载 在点击HTTPS下面的复制 github上也是类似的方式 把项目地址复制下来 在本机电脑 新建一个文件夹 命名任意 打开新建的文件夹
  • 神经元模型介绍

    一 深度学习的背景 目前 深度学习 Deep Learning 简称DL 在算法领域可谓是大红大紫 深度学习是机器学习领域中的一个新的研究方向 模仿生人类神经网络 学习样本数据的内在规律的一种方法 神经网络属于监督学习的过程 可以处理 回归
  • SQL 语句学习总结:

    1 四范式 范式好处 数据库范式是数据表设计的规范 在范式规范下 数据库里每个表存储的重复数据降到最少 这有助于数据的一致性维护 同时在数据库范式下 表和表之间不再有很强的数据耦合 可以独立的增长 ie 比如汽车引擎的增长和汽车的增长是完全
  • 接口响应时间长,前端返回请求超时解决

    在前端代码设置axios响应时间 1 全局设置 axios defaults timeout 时间 单位为毫秒 或 2 封装的http请求 const service axios create 公共接口 这里注意后面会讲 baseURL p
  • 解决Flutter输入框限制最大输入长度时,从中间输入会自动截取掉后面的内容

    一 问题原由 当限制输入框最大输入长度时 将光标移动到中间输入 当输入的内容长度加上已经输入内容的长度大于限制的输入长度时 Flutter会将光标后面的内容进行截取掉 而当我在原生Android上验证时却是自动截取输入的内容原有的内容不动
  • 输出数组中最大、小值和下标

    详细看代码 package exp 4 public class Array01 public static void main String args int arrs 1 2 2 12 7 5 声明数组并赋值 int max arrs
  • Python实现目录文件扫描功能

    日常程序编写中常常遇到需要获取目录下文件的功能 对该功能做个简单整理 供大家参考 实现遍历目录文件最常用的方法是os listdir 还有一种os walk方法 一 os listdir方法 源码中对该方法的描述 Return a list
  • 史上最详细黑盒测试用例方法总结(等价类、边界值、因果图等)

    黑盒测试用例设计方法 一 等价类 等价类划分法原理 1 把程序的输入域划分成若干部分 然后从每个部分中选取少数代表性数据作为测试用例 2 每一类的代表性数据在测试中的作用等价于这一类中的其他值 如果某一类中的一个例子发现了错误 这一等价类中