4. 设计(黑盒)测试用例 (一) 等价类 边界值 判定表

news2024/11/15 10:57:49

本篇文章我们将详细介绍如何来测试用例。

1. 设计测试用例的基本要素

1.1 测试用例概念

测试用例(Test Case)是为了实施测试而向被测试的系统提供的一组集合。

1.2 测试用例要素

测试环境、测试步骤、测试数据、预期结果。

1.3 测试用例的重要性

  • 提高测试效率
  • 降低测试重复性
  • 手工测试用例是自动化测试用例的基础

2. 黑盒测试用例设计方法

为了设计出比较全面的测试用例(正常 + 发散测试 + 逆向测试)

2.1 基于需求设计测试用例

步骤

充分理解需求(前提) -> 将大需求拆分成子需求 -> 基于需求设计

基于需求设计测试用例是测试设计和开发测试用例的基础,第一步就要分析测试需求,验证需求是否正 确、完整、无二义性,并且逻辑自洽。在需求正确的基础上细化测试需求,从测试需求提炼出一个个测 试点或者测试项,然后根据每一个测试点进行测试用例的设计。
在分析测试需求时,一般分为 功能测试需求 非功能测试需求:

功能相关:

  • 业务流程(prd 软件需求文档)
  • 界面相关(UI 设计稿)
  • 易用性(测试人员经验)

非功能相关:

  • 兼容
  • 安全
  • 性能
用户需求 :
购买 3000 块钱以内的华为智能手机
测试用例:
1. 价格 <=3000
2. 品牌为华为
3. 智能手机
4. 手机功能验证:
        4-1.打电话
        4-2.接电话
        4-3.发短信
        4-4.收短信
        ...
软件需求:
1.1.1.1.5.3 异常事件流
1. 若用户未收到激活邮件,可在登录界面录入电子邮件及密码后,再次发送激活邮件。
2. 每次发送的激活邮件,仅在发送邮件后起 24 小时之内有效,超过 24 小时后需重新发送激活邮件。
** 测试用例 **
1-1 、未收到邮件,登录时输入电子邮件及密码后,再次发送激活邮件
1-2 、已收到邮件,登录时输入电子邮件及密码后,不发送激活邮件
2-1 、收到邮件,未激活, 24 小时内进行激活
2-2 、收到邮件,未激活, 24 小时后链接过期进行激活。
2-3 、收到邮件,已激活, 24 小时后链接过期,再次点击激活
页面检查:
1 、收到激活邮件
2 、邮件内容正确
3 、激活 URl 正确,可激活
4 、再次激活提示已激活
5 、过期激活提示已过期

2.2 练习设计测试用例

163 邮箱注册 登录模块测试用例设计(基于需求设计测试用例)

首先将需求拆分成子需求,然后将子需求拆分成功能相关和非功能相关。具体如下图所示:

2.3 具体设计测试用例方法 

2.3.1 等价类

将需求划分为等价类(若干个),从等价类中选出一个测试用例,如果这个测试用例通过,则认为所代表的等价类测试通过。

有效等价类:满足用户需求对应的输入集合。

无效等价类:不满足需求。

等价类只考虑输入域的分类,没有考虑输入域的组合,需要其他的设计方法和补充。
设计测试用例步骤

充分理解需求 -> 划分有效等价类、无效等价类 -> 设计测试用例

举例

对于一个 6-15 位输入,通过等价类方法设计测试用例。

2.3.2 边界值
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。
通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。

边界点:

  • 上点:边界上的点。
  • 内点:边界内的点。
  • 离点:上点附近的一个点(如果是闭区间,离点就是边界外的点;如果是开区间,离点就是边界内的点)
设计测试用例步骤

充分理解需求 -> 找边界点 -> 针对边界点设计测试用例

举例

2.3.3 判定表(因果图)

判定表:表达逻辑判断的工具(一个表格,表格里面有条件和结果)。

判定表中存在以下四种关系:

恒等条件为真 -> 结果为真
条件为真 -> 结果为假

两个条件均为真 -> 结果为真;

两个条件中任意一个为假 -> 结果为假;

两个条件均为假 -> 结果为假;

两个条件中任意一个为真 -> 结果为真;

设计测试用例步骤
  • 设计所有可能的输出和输入
  • 找输入与输出之间的对应关系
  • 根据输入和输出确定判定表
  • 将判定表对应到每个测试用例
举例

淘宝 618 是否优惠

订单金额大于 300 或者有红包则优惠 否则 不优惠

输入:订单提交、订单金额、红包

输出:优惠 或者 不优惠

12345678
订单提交YYYYNNNN
金额大于300YYNNYYNN
有红包YNYNYNYN
优惠YYYNNNNN

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

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

相关文章

架构训练营学习笔记:4-1存储架构模式之数据库存储架构

一 数据库读写分离 适应场景&#xff1a;互联网读多写少。 原理&#xff1a;主机负责写&#xff0c;从机可以多个负责读取。数据主从做同步。 业务的写发给主机&#xff0c;读操作发给从机。 条件&#xff1a;1业务量增长 2 其他优化条件已处理&#xff08;索引优化、缓存&a…

Linux学习之环境变量、预定义变量和位置变量

环境变量是每个Shell打开就能获取到的变量&#xff0c;即一打开终端就已经初始化的变量。 显示环境变量 set、env和declare都可以查看变量的值。按照可以查看信息的范围从小到大是env<set<declare。 env只能显示全局变量。 set可以输出所有的变量&#xff0c;包括全局…

多数据源切换、读写分离-02

使用dynamic进行数据源切换、读写分离 特性 1、支持数据源分组 &#xff0c;适用于多种场景纯粹多库读写分离一主多从混合模式。 2、支持数据库敏感配置信息 加密 ENC()。 3、支持每个数据库独立初始化表结构schema和数据库database。 4、支持无数据源启动&#xff0c;支持懒加…

【已解决】pyecharts大屏点击Save Config没反应,无法保存chart_config.json

在使用pyecharts开发大屏时&#xff0c;临时大屏拖拽好之后&#xff0c;点击Save Config之后没反应&#xff0c;没有弹出json保存对话框。 报错现象&#xff1a; 利用Python的pyecharts库的Page组件开发可视化大屏时&#xff0c;无法点击Save Config按钮。 问题原因&#xff1…

sonarqube安装并配置CI/CD

sonarqube安装使用 目录 简介效果(配置在下面查看)官方文档环境准备配置compose-sonarqube.yml启动登录集成Gitlab 获取私钥sonarqube配置gitlab查看项目 配置 手动方式Gitlab CI/CD 自动检测 简介 SonarQube是一个开源的代码质量管理平台&#xff0c;用于对代码进行静态代…

Kong简介

Kong 是一个开源的云原生 API 网关和服务网格&#xff0c;它提供了强大的流量控制、请求转发、日志记录、认证和授权等功能。 一、Kong Consumer Kong Consumer 是 Kong API 网关中的一个重要概念&#xff0c;它代表使用你的 API 的最终用户或客户端。Consumer 的创建和配置可…

Spring AOP知识点详解

Spring AOP是 Spring最核心的能力&#xff0c;那到底什么是AOP呢&#xff0c;今天了不起带大家了解一下。 AOP是什么 AOP(Aspect Oriented Programming):面向切面编程&#xff0c;是OOP(面向对象编程)的一个延续&#xff0c;其和OOP一样&#xff0c;也是一种编程思想&#xff0…

在Linux下做性能分析3:perf

介绍 ftrace的跟踪方法是一种总体跟踪法&#xff0c;换句话说&#xff0c;你统计了一个事件到下一个事件所有的时间长度&#xff0c;然后把它们放到时间轴上&#xff0c;你可以知道整个系统运行在时间轴上的分布。 这种方法很准确&#xff0c;但跟踪成本很高。所以&#xff0…

有道云笔记迁移到自建服务器Joplin

当前有道云笔记各项业务开始逐渐向会员靠拢&#xff0c;如一开始不受限的多端同步现在非会员限制成了两个终端&#xff0c;估计以后会有越来越多的免费内容会逐渐的向会员转移&#xff0c;因此博主开始考虑自建服务器来搞一个云笔记服务端。 因博主已有黑群晖&#xff0c;并且有…

OK3588运行python程序对摄像头数据进行图像处理

OK3588运行python程序读取usb摄像头 硬件连接用工具测试验证摄像头工作正常python 读取usb摄像头并进行图像处理 硬件连接 把usb摄像头插入HOST的usb接口。 在串口终端运行 sudo v4l2-ctl --list-devices 如下图 当前的usb设备是 /dev/video74 用工具测试验证摄像头工作正常…

基于深度学习的高精度80类动物目标检测系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度80类动物目标检测识别系统可用于日常生活中或野外来检测与定位80类动物目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的80类动物目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系统采用YO…

#4. 背包

4030: 背包 题目内容 有 n n n 个物品&#xff0c;每个物品有大小 w i w_i wi​ 和价值 v i v_i vi​&#xff0c;再给定一个整数 k k k 和背包大小 m m m&#xff0c;对每个 1 ≤ i ≤ n − k 1 1 \le i \le n - k 1 1≤i≤n−k1&#xff0c;求出如果只能选择 i i …

Linux中makefile

第一个版本的makefile Makefile的依赖是从上至下的&#xff0c;换句话说就是目标文件是第一句里的目标&#xff0c;如果不满足执行依赖&#xff0c;就会继续向下执行。如果满足了生成目标的依赖&#xff0c;就不会再继续向下执行了。 Make会自动寻找依赖条件所用到的文件&…

uni-app的H5版本下载跨域问题

前端能正常访问图片&#xff0c;但无法下载 因为路径不经过业务代码&#xff0c;所以需要在nginx配置跨域 代码&#xff1a; add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods GET, POST, OPTIONS; add_header Access-Control-Allow-H…

【黑客】网络安全靠自学?你不要命了!

1️⃣网安现状 ❗本文面向所有 想要涉足网安领域 或 已经涉足但仍处在迷茫期 的伙伴&#xff0c;如果你月薪达到了3w&#xff0c;那么请你离开。 如果没有&#xff0c;希望你继续看下去&#xff0c;因为你人生的转折点将从这篇文章开始。 ✈️网络安全&#xff0c;一个近几年大…

路径规划算法:基于斑马优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于斑马优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于斑马优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化算法斑马…

Keil5新建51单片机demo工程模板

51单片机新建工程使用到的软件有keil5&#xff0c;首先安装好keil5软件&#xff0c;安装教程在:【Keil&#xff08;C51&#xff09;介绍、下载、安装、注册与2个补丁】Keil&#xff08;C51&#xff09;介绍、下载、安装与2个补丁_西晋的no1的博客-CSDN博客 一、新建一个空工程 …

【QT】——基础窗口类QMainWindow

目录 1.概念 2.菜单栏——QMenuBar 3.工具栏 添加QAction 工具栏属性设置 5.状态栏——QStatusBar 6 停靠窗口 属性设置 1.概念 QMainWindow 是标准基础窗口中结构最复杂的窗口&#xff0c;QMainWindow继承QWidget&#xff0c;他在QWidget的基础上提供了菜单栏&#…

网络编程 socket

目录 网络编程 套接字&#xff08;socket&#xff09;1. 认识端口号2. TCP协议3. UDP协议4. 网络字节序列5. 常见的套接字6. socket编程接口6.1 socket常见APIsocket函数recvfrom函数sendto函数read函数 从tcp socket中读取接收数据 6.2 sockaddr结构6.3 地址转换函数6.4 udp s…