黑盒测试用例的具体设计方法(7种)

7种常见的黑盒测设用例设计方法,分别是等价类、边界值、错误猜测法、场景设计法、因果图、判定表、正交排列。

(一)等价类

1.概念

依据需求将输入(特殊情况下会考虑输出)划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的等价类测试通过,这样就可以用较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题。

2.分类

有效等价类:满足用户需求

无限等价类:不满足用户需求

3.设计步骤

①充分理解需求;

②划分有效等价类、无效等价类;

③分别从有效等价类、无效等价类中各抽取其中一个数据进行测试用例设计。

4.设计测试用例

题目:针对6-15位长度设计测试用例

设计:

(二)边界值

1.概念

边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法,通常情况下搭配等价类使用,其测试用例来自等价类的边界。

2.边界点

上点:边界上的点

内点:边界内的点

离点:边界值附近的两个点------闭区间(区间外距上点最近的点)------开区间(区间内距上点最近的点)

举例:

3.设计步骤

①充分理解需求;

②找边界点;

③针对边界点设计测试用例

4.设计测试用例

题目:注册邮箱的软件用户名要求长度为6-15位

设计:

(三)错误猜测法

1.概念

对被测试软件设计的理解,过往经验以及个人直觉,推测出软件可能存在的缺陷,从而针对性地设计测试用例的方法。

2.优缺点

优点:能评判出一个测试人员的能力和经验。

缺点:过度依赖个人能力,难以系统化。

3.设计测试用例

题目:注册一个邮箱

设计:

1、校验中特殊字符空格的处理?
2、密码校验中的大小写?
3、姓名中的特殊字符?
4、密码发送是否明文

(四)场景设计法

1.概念

通俗的说是用“事件流”设计场景测试用例,该方法可以比较生动地描绘出事件触发时的情景,使测试用例更容易理解和执行。

2.设计步骤

①充分理解需求;

②确定主事件流;

③确定次事件流;

④主事件流和次事件流产生出来的事件就是测试用例。

3.设计测试用例

场景/题目:ATM机取款

设计:

(五)因果图

1.概念

是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。

2.基本要素

与:一假且假,全真为真

或:一真且真,全假为假

恒等:真为真,假为假

非:真为假,假为真

3.设计步骤

①分析所有可能的输入和可能的输出;
②找出输入与输出之间的对应关系;
③画出因果图;
⑤把因果图对应到每一个测试用例。

4.设计测试用例

题目:“淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则有优惠”。

设计:①输入:订单已提交、金额大于300、有红包
              输出:优惠、不优惠。

           ②对应关系:2*2*2

            

③画因果图:设计标注1:订单已提交  2:订单金额大于300元  3:有红包  21:优惠  22:不优惠

(六)判定表

1.概念

数据是一张表来体现的,表里面有:输入(条件)、输出(结果)、关系(恒等、或、与、非)。

2.设计步骤

①分析所有可能的输入和可能的输出;
②找出输入与输出之间的对应关系;
③画出判定表。
⑤把判定表对应到每一个测试用例。

3.设计测试用例

题目:“淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则有优惠”。

设计:①输入:订单已提交、金额大于300、有红包
              输出:优惠、不优惠。

   ②对应关系:2*2*2

            

③画判定表:设计标注1:订单已提交  2:订单金额大于300元  3:有红包  21:优惠  22:不优惠

(七)正交排列

1.概念

是研究多因素多水平的一种设计方法,由试验因素的全部水平组合中挑选出部分有代表性的点进行试验,找出最优的水平组合。正交试验设计是一种基于正交表的、高效率、快速、经济的试验,解决了判定表用力太多的问题。

2.基本要素

因素(Factor):在一项试验中,凡欲考察的变量称为因素(变量)
水平(位级)(Level)
:在试验范围内,因素被考察的值称为水平(变量的取值)

3.正交表构成

行数(Runs):正交表中的行的个数,即试验的次数,用N代表。
因素数(Factors):正交表中列的个数,用C代表。

水平数(Levels):任何单个因素能够取得的值的最大个数,用T代表。 

正交表的表示形式:L=行数(水平数*因素数) 

4.性质

每一列中各数字出现的次数都一样多。
任何两列中的各有序数对出现的次数都一样多。

5.设计测试用例步骤

1、有哪些因素(变量)
2、每个因素有哪几个水平(变量的取值)
3、选择一个合适的正交表
4、把变量的值映射到表中
5、把每一行的各因素水平的组合作为一个测试用例
6、加上你认为可疑且没有在表中出现的用例组合

6.设计测试用例

题目:注册邮箱
设计:

1、因素:姓名、邮箱、密码、确认密码、验证码
2、水平:填写、不填写


3、表中的因素数=5;
表中至每个因素数的水平数=2
行数取最少的一个,即试验次数最少的一个
L=N(TC)=(2-1)*5+1=6(25) N=Cx(T-1)+1
L=6(25)
N试验次数
T水平数
C因素数
选择正交表,这里选择了L6_2_5。正交表不是随便选择的,而是设计好的
4、生成测试用例
思路:因素取值为填写时:正交按取值个数5-3-2-1(5已全了,3,2,1任意排列)进行排列,实验次
数不够用取值为填写个数为2或3任意组合,但要满足正交的二条性质。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

备战蓝桥杯---数据结构与STL应用(基础实战篇1)

话不多说,直接上题: 当然我们可以用队列,但是其插入复杂度为N,总的复杂度为n^2,肯定会超时,于是我们可以用链表来写,同时把其存在数组中,这样节点的访问复杂度也为o(1).下面是AC代码: 下面我们来…

Vim实战:使用Vim实现图像分类任务(一)

文章目录 摘要安装包安装timm 数据增强Cutout和MixupEMA项目结构编译安装Vim环境环境安装过程安装库文件 计算mean和std生成数据集 摘要 论文:https://arxiv.org/pdf/2401.09417v1.pdf 翻译: 近年来,随着深度学习的发展,视觉模型…

项目解决方案:高清视频监控联网设计方案

目 录 一、客户需求 二、网络拓扑图 三、方案描述 四、服务器配置 五、方案优势 1. 多级控制 2. 平台可堆叠使用 3. 支持主流接入协议 4. 多种终端显示 5. 视频质量诊断 6. 客户端功能强大 7. 一机一档 一、客户需求 客户现场存在两个网络环境&#xff0c…

25考研北大软微该怎么做?

25考研想准备北大软微,那肯定要认真准备了 考软微需要多少实力 现在的软微已经不是以前的软微了,基本上所有考计算机的同学都知道,已经没有什么信息优势了,只有实打实的有实力的选手才建议报考。 因为软微的专业课也是11408&am…

HarmonyOS4.0系统性深入开发31创建列表(List)

创建列表(List) 概述 列表是一种复杂的容器,当列表项达到一定数量,内容超过屏幕大小时,可以自动提供滚动功能。它适合用于呈现同类数据类型或数据类型集,例如图片和文本。在列表中显示数据集合是许多应用…

[DotNetGuide]C#/.NET/.NET Core优秀项目和框架精选

前言 注意:排名不分先后,都是十分优秀的开源项目和框架,每周定期更新分享(欢迎关注公众号:追逐时光者,第一时间获取每周精选分享资讯🔔)。 帮助开发者发现功能强大、性能优越、创新前…

R语言学习case7:ggplot基础画图(核密度图)

step1: 导入ggplot2库文件 library(ggplot2)step2&#xff1a;带入自带的iris数据集 iris <- datasets::irisstep3&#xff1a;查看数据信息 dim(iris)维度为 [150,5] head(iris)查看数据前6行的信息 step4&#xff1a;画图展示 plot2 <- ggplot(iris,aes(Sepal.W…

基于C#制作一个连连看小游戏

基于C#制作一个连连看小游戏,实现:难易度选择、关卡选择、倒计时进度条、得分计算、音效播放等功能。 目录 引言游戏规则开发环境准备游戏界面设计游戏逻辑实现图片加载与显示鼠标事件处理游戏优化与扩展添加关卡与难度选择说明</

wpf 数据转换(Bytes 转 KB MB GB)

效果 后端 using ProCleanTool.Model; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Data;namespace P…

Python(19)Excel表格操作Ⅰ

目录 导包 读取EXCEL文件 1、获取worksheet名称 2、设定当前工作表 3、输出目标单元格数据 4、工作表.rows&#xff08;行&#xff09; 5、工作表.columns&#xff08;列&#xff09; 小结 导包 要想使用 python 操作 Excel 文件&#xff0c;应当导入 openpyxl 包。在…

【Docker】WSL(Windows Subsystem for Linux)常见命令解释说明以及简单使用

欢迎来到《小5讲堂》&#xff0c;大家好&#xff0c;我是全栈小5。 这是《Docker容器》序列文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对…

Flask 入门2

1. 在上一节中&#xff0c;我们使用到了静态路由&#xff0c;即一个路由规则对应一个 URL。而在实际应用中&#xff0c;更多使用的则是动态路由&#xff0c;它的 URL是可变的。 2. 定义一个很常见的路由地址 app.route(/user/<username>) def user(username):return U…

鸿蒙首批原生应用!无感验证已完美适配鸿蒙系统

顶象无感验证已成功适配鸿蒙系统&#xff0c;成为首批鸿蒙原生应用&#xff0c;助力鸿蒙生态的快速发展。 作为全场景分布式操作系统&#xff0c;鸿蒙系统旨在打破不同设备之间的界限&#xff0c;实现极速发现、极速连接、硬件互助、资源共享。迄今生态设备数已突破8亿台&…

【环境配置】安装了pytorch但是报错torch.cuda.is_availabel()=Flase

解决思路&#xff1a;import torch正常&#xff0c;说明torch包安装正常&#xff0c;但是不能和gpu正常互动&#xff0c;猜测还是pytroch和cuda的配合问题 1.查看torch包所需的cuda版本 我的torch是2.0.1&#xff0c;在现在是比较新的包&#xff0c;需要12以上的cuda支持&…

【flutter项目类型】project type如何区分

通过项目中.metadata内容区分 如 # Used by Flutter tool to assess capabilities and perform upgrades etc. # # This file should be version controlled and should not be manually edited.version:revision: 85684f9300908116a78138ea4c6036c35c9a1236channel: stablep…

vs 撤销本地 commit 并保留更改

没想到特别好的办法&#xff0c;我想的是用 vs 打开 git 命令行工具 然后通过 git 命令来撤销提交&#xff0c;尝试之前建议先建个分支实验&#xff0c;以免丢失代码&#xff0c; git 操作见 git 合并多个 commit / 修改上一次 commit

PaddleNLP的简单使用

1 介绍 PaddleNLP是一个基于PaddlePaddle深度学习平台的自然语言处理&#xff08;NLP&#xff09;工具库。 它提供了一系列用于文本处理、文本分类、情感分析、文本生成等任务的预训练模型、模型组件和工具函数。 PaddleNLP有统一的应用范式&#xff1a;通过 paddlenlp.Task…

单片机学习笔记---静态数码管显示

目录 数码管是什么&#xff1f; 一位数码管的引脚定义 四位一体的数码管引脚定义 数码管的原理图解析 数码管怎么显示数据&#xff1f;&#xff08;总结代码显示&#xff09; 今天开始学习数码管&#xff0c;它比LED和独立按键复杂一点 数码管是什么&#xff1f; LED数码…

交叉编译opencv运行平台rk3588

opencv版本&#xff1a;4.8.0 opencv_contrib版本&#xff1a;4.8.0 在源码目录下建build目录&#xff0c;进入该目录配置编译选项生成makefile cmake 配置参数&#xff1a; cmake -DCMAKE_MAKE_PROGRAM:PATH/usr/bin/make -DCMAKE_INSTALL_PREFIX/home/rog/my_file/other_L…

「工业遥测」图表控件LightningChart在化工精炼领域中的应用

LightningChart.NET完全由GPU加速&#xff0c;并且性能经过优化&#xff0c;可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D&#xff0c;高级3D&#xff0c;Polar&#xff0c;Smith&#xff0c;3D饼/甜甜圈&#xff0c;地理地图和GIS图表以及适用于科学…