测试用例基础知识

news2024/12/25 14:05:03

目录

什么是测试用例?

测试用例格式

测试用例编写

测试用例的设计方法

等价类

边界值

判定表

因果图

流程图

场景法

错误推测法

什么是测试用例?

测试用例 (Test Case)是指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。 其内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。

测试用例简单来说就是指导如何做测试的文档,该文档主要记录需要验证被测软件的是否满足需求。

测试用例格式

一个完整且良好的测试用例应该包括用例编号、测试项、测试标题、用例属性、重要级别(高、中、低)、预置条件、测试输入、操作步骤、预期结果和实际结果等十大特点。

常用的测试用例一般包括八个要素:编写测试用例的八大要素有:用例编号,所属模块,测试标题,重要级别,前置条件,测试输入,操作步骤,预期结果。

类似于下图:

测试用例编写

一般根据产品需求来定,根据产品效果图或者产品需求来定测试用例怎么去编写,还要考虑到普通用户使用软件的习惯,以及一些特殊情况和极端情况。

比如一个登录模块:

1.常规思考:

一个基本的登录页面,按照常规的思路能够想到的测试点有哪些?

以上测试点是基于用户输入的基础点。

2.还能扩充哪些?

扩充的测试点需要基于测试工程师对产品的熟悉程度,测试经验以及实践。这些测试点的设计是需要测试工程师通过不断学习,熟悉项目,测试积累中得到的。

测试用例的设计方法

等价类

等价类划分法是一种被广泛应用的黑盒测试用例设计方法,它能够合理分类所有可能的输入数据,即程序的输入域,划分为若干个不相干的子集,称为等价类。每个子集中选取少量具有代表性的数据作为测试用例。

等价类又分为有效等价类和无效等价类。

有效等价类代表对程序有效的输入。

无效等价类则是其他任何可能的输入(即不正确的输入值)。

被测程序若是正确的,就应该既能接受有效的输入,也能接受无效输入的考验

这种方法的优点是,我们只需要关注少数代表性的数据,就可以对整个等价类进行有效的测试

边界值

边界值分析法是一种黑盒测试方法,它对输入或输出的边界值进行测试,通常作为对等价类划分法的补充。此方法的测试用例来自等价类的边界,所谓边界值,是指相对于输入等价类和输出等价类而言,稍高于边界或稍低于边界的一些特定情况。

判定表

判定表是一种黑盒测试设计技术,它通过列出所有可能的条件和结果组合来描述系统的行为。判定表通常用于复杂的逻辑条件和多个条件的组合,以确定系统在不同条件下的输出。

判定表由四个部分组成:

  • 条件桩(Condition Stub):列出所有的条件。
  • 动作桩(Action Stub):列出所有可能的操作或结果。
  • 条件条目(Condition Entry):列出每个条件下的动作或结果。
  • 规则(Rule):列出每个条件条目下的动作或结果。

优点在于能够清晰地显示复杂的条件组合,易于理解和使用。同时,它也可以帮助测试人员发现遗漏的测试用例。

缺点是当条件数量增加时,表格会变得非常庞大和复杂。

因果图

一种描述输入条件的组合及每种组合对应的输出的图形化工具。

用来处理等价类划分和边界值考虑不到的情况,适用描述多种条件的组合,产生多个相应动作的测试方法;从程序规格说明书的描述中找出因果关系。

流程图

流程分析法主要是针对测试场景类型属于流程测试场景的测试项下的测试子项进行设计。

场景法

场景法是一种被广泛应用的软件测试方法,它通过模拟真实的用户操作场景来对软件系统的功能点或业务流程进行描述和测试。在这种方法中,测试人员会根据需求分析出基本流和备选流,然后根据每个流的不同情况生成不同的场景,针对每个场景设计相应的测试用例。

场景法的主要优点能够有效地提高测试效率并达到良好的测试效果

它通过模拟特定场景边界发生的事情,通过事件来触发某个动作的发生,观察事件的最终结果,从而发现需求中存在的问题。

此外,场景法还特别适用于系统的典型业务和典型功能,因为它可以很方便地构造一个基本流。

错误推测法

错误推测法是一种基于经验和直觉的软件测试方法

其主要思想是预测和检查程序中可能存在的各种错误。具体来说,测试人员会根据他们的经验和直觉,列举出程序可能出现的错误或容易产生错误的测试点,然后根据这些测试点来编写针对性的测试用例。

因此,使用这种方法需要具有一定的经验和直觉,同时也需要对被测试的程序有一定的理解。

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

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

相关文章

maven环境变量,安装源,本地仓库配置

1. maven环境变量 我这里用的是idea自带的maven 数值为: D:\software\computer_software\java\IDEAJ\IDEAJ2021.2.1\IntelliJ IDEA 2021.2.1\plugins\maven\lib\maven3\bin 2. 安装源更换为阿里云(我不知道清华源是什么网址,网上也没查到&am…

人工智能基础_机器学习007_高斯分布_概率计算_最小二乘法推导_得出损失函数---人工智能工作笔记0047

这个不分也是挺难的,但是之前有详细的,解释了,之前的文章中有, 那么这里会简单提一下,然后,继续向下学习 首先我们要知道高斯分布,也就是,正太分布, 这个可以预测x在多少的时候,概率最大 要知道在概率分布这个,高斯分布公式中,u代表平均值,然后西格玛代表标准差,知道了 这两个…

redux connect组件在手工传入参数时报错

redux使用connect创建一个高阶组件时后,如果手工给该组件传入参数时会因参数不同会报错,此时可以如下处理:

流量攻击:如何有效利用网络漏洞

在网络世界中,攻击者采用各种方法来试图利用网络漏洞来实施攻击。这些攻击可能导致目标网站宕机、性能下降,或者更严重的数据泄露。在本文中,我们将从攻击者的角度探讨如何有效地利用流量攻击,以便更好地理解如何防范这些攻击。 利…

二叉树的后续遍历(迭代法)

迭代法实现二叉树的后续遍历 1、递归版本 public static void dfs(TreeNode root){if(rootnull){return;}if(root.left!null)dfs(root.left);if(root.right!null)dfs(root.right);System.out.println(root.val); }从递归版本可以看出我们第一步需要遍历完所有的左节点 这里我…

电脑提示找不到msvcp140.dll无法继续执行代码的4种解决办法

今天我想和大家分享的是关于找不到msvcp140.dll无法继续执行代码的4种解决办法。在我们日常的教学和工作中,有时候会遇到这样的问题,让我们感到困惑和无奈。那么,msvcp140.dll究竟是什么?为什么会丢失呢?接下来&#x…

【java学习—十】异常(1)

文章目录 1. 概念1.1. 前言1.2. java中的异常 2. java运行时异常举例3. 总结 1. 概念 1.1. 前言 任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为 0 ,数组下标越界,要读写的文件不存在等等。     捕获错误最理想的是…

elementUI el-collapse 自定义折叠面板icon 和 样式 或文字展开收起

: :v-deep{.el-collapse-item__arrow {width: 40px;}.el-icon-arrow-right:before {content: "展开";font-size: 15px;font-family: heiti;color: #2295ff;font-weight: bold;}.el-collapse-item__arrow.is-active {transform: none;}.el-collapse-item__arrow.is-a…

在VMware Workstation Pro安装win7

1.下载 地址 2.创建虚拟机 3.选择需要安装的系统镜像 4.选择系统版本 通常情况下选择 Windows 7 Ultimate 旗舰版,点击下一步,若提示产品密钥,则忽略 5.虚拟机命名 虚拟机保存位置保持默认即可,如果有需求可以更换位置 6…

韦东山D1S板子——汇编启动代码第一行分析(.long 0x0300006f)

1、汇编启动源码 2、分析二进制&#xff1a;0x0300006f 2.1、反汇编代码 2.2、jal指令 jal指令的作用&#xff1a;跳转到当前PC值偏移offset处执行&#xff0c;其中offset由jal指令的bi[31:12]表示&#xff1b; 2.3、分析指令&#xff1a;j 20030 <reset> j 20030 //伪…

一、【海报合成的流程】

文章目录 主体创意草图素材拼图光影调色 主体 首先联想主体相关的关键词 创意 将联想到的关键词&#xff0c;串起来生成创意 草图 结合主体跟创意&#xff0c;我们先绘制一幅草图。草图可以是简单的图形&#xff0c;然后组成大概的结构布局。 素材 根据草图去寻找我们需…

【易售小程序项目】后端部署、Uniapp项目Web部署

Uniapp项目Web打包部署 为什么不部署小程序 因为小程序部署审核比较严格&#xff0c;还需要备案&#xff0c;而且我现在还没有完全开发完成&#xff08;研究生开学之后&#xff0c;基本没有时间开发了&#xff09;&#xff0c;到时候再摸索一下吧。之所以还没有开发完成我就部…

【计算机网络】应用层——HTTPS协议

目录 HTTPS协议加密对称加密非对称加密 数据摘要&#xff08;数据指纹&#xff09;HTTPS安全问题对称加密非对称加密 证书客户端认证查看客户端证书 解决数据安全问题&#xff08;引入证书&#xff09; HTTPS协议 HTTP 协议内容都是按照⽂本的⽅式明⽂传输的. 这就导致在传输过…

Promise 对象与 Promises/A+ 规范

目录 前言 什么是 Promise 对象&#xff1f; Promises/A 规范是什么&#xff1f; 逻辑 示例 用法 结论 参考资料 前言 在现代JavaScript编程中&#xff0c;Promise对象是一种用于处理异步操作的重要工具。它们被广泛用于处理网络请求、文件读取、定时任务等异步操作。本…

学习笔记---更进一步的双向链表专题~~

目录 1. 双向链表的结构&#x1f98a; 2. 实现双向链表&#x1f41d; 2.1 要实现的目标&#x1f3af; 2.2 创建初始化&#x1f98b; 2.2.1 List.h 2.2.2 List.c 2.2.3 test.c 2.2.4 代码测试运行 2.3 尾插打印头插&#x1fabc; 思路分析 2.3.1 List.h 2.3.2 List.…

一张图系列 - “kv cache“

我觉得回答这个问题需要知道3个知识点&#xff1a; 1、multi-head-attention是如何计算的&#xff1f;attention的数学公式&#xff1f; kv cache是如何存储和传递的&#xff1f; 2、kv cache 的原理步骤是什么&#xff1f;为什么降低了消耗&#xff1f; 3、kv cache 代码模…

Matlab神经网络工具箱——一个例子搞定神经网络算法

本文用到的数据来自于matlab神经网络 数据的文件提取码以及链接会放在评论区 分析数据 这里大致是整个数据的样子&#xff0c;下面来分析数据&#xff1a; ①整个数据一共有401个输入&#xff0c;这里体现的也就是有401种吸光度 ②前五十组数据&#xff0c;既有输入也有输出&a…

2023阿里云双十一服务器优惠价格87元/年,你敢信吗?

2023阿里云双十一服务器优惠价格87元/年&#xff0c;你敢信吗&#xff1f;确实是87元一年&#xff0c;轻量应用服务器2核2G3M带宽&#xff0c;不限制月流量&#xff0c;自带50GB系统盘。活动阿里云服务器网&#xff1a;aliyunfuwuqi.com/go/1111 阿里云轻量应用服务器2核2G3M带…

逆向第一课---安装ADB工具,并使用夜神模拟器连接

1、安装ADB 如果安装了Android SDK可以直接去android_sdk/platform-tools/目录下使用ADB命令。 如果没有安装Android SDK&#xff0c;需要先通过下面的地址下载ADB https://adbdownload.com/ 根据自己的系统点击下载&#xff0c;我这里使用Windows系统&#xff0c;所以下载Wi…