【软件测试】(四)测试用例怎么写

article/2025/11/9 15:52:15

文章目录

  • 测试用例基本要素
    • 1. 评价好的测试用例的标准
    • 2. 根据需求写测试用例
    • 3. 测试用例的设计方法
      • 3.1 基于需求进行测试用例的设计
      • 3.2 具体的设计用例的方法
        • 3.2.1 等价类
        • 3.2.2 边界值
        • 3.2.3 错误猜测法
        • 3.2.4 场景设计法
        • 3.2.5 因果图
        • 3.2.6 正交设计法


测试用例基本要素

之前文章提到过,测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等要素。

1. 评价好的测试用例的标准

对比好坏用例的评价标准:
(1)用例表达清楚,无二义性;
(2)用例可操作性强;
(3)用例的输入与输出明确,一条用例只有一个预期结果;
(4)用例的可维护性好(存放时避免PDF形式);
(5)用例对需求的覆盖率高。
(6)暴露程序的Bug能力强。

注意:应该避免测试用例多种情况混合在一起,容易漏测!!

2. 根据需求写测试用例

(1)首先要保证需求的合理性和正确性,要先验证需求;
(2)分析需求,把大需求细化成小需求,根据每一个小需求提炼出功能点,根据每一个功能点发散的考虑它的测试用例,去写测试用例(用具体的设计测试用例的方法)。

3. 测试用例的设计方法

3.1 基于需求进行测试用例的设计

基于需求设计测试用例是测试设计和开发测试用例的基础。

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

在分析测试需求时,一般分为功能测试需求和非功能测试需求。

1. 功能需求测试分析

对于功能测试中,可以借助功能框图来帮助我们进行测试的需求分析。概括起来,功能测试需求包括以下,通常包括以下几个方面。
(1)系统各个功能界面的验证
(2)借助业务把功能串起来进行测试
(3)功能的一致性,交互性(多功能互操作)的测试
(4)系统的不同输入,结果输出的业务数据测试。
(5)功能的错误操作,异常操作的测试(属于负面测试)
(6)功能实现用到的算法验证,有时需要用运代码评审
(7)用户操作的易用性,用户体验,往往结合功能测试同时验证

针对具体的需求,可以根据业务分类,用户角色(餐厅的会员系统)或者用户操作区域等将系统的功能分解成若干个功能模块,然后按照功能模块分别进行测试需求分析。按照功能模块划分,业务模块划分是最常见的做法。

2. 非功能需求测试分析

非功能测试需求主要涉及性能,安全性,可靠性,兼容性,易维护性和可移植性等。

从测试需求分析来看,每一类非功能特性测试都需要根据需求单独分析。他们之间可能会存在相互影响,如安全性越高,就越有可能给易用性,性能带来更大的挑战。
这里要说明的是对于每一个应用软件系统,非功能特性的质量需求都是存在的,但是不同的项目类型对各个非功能特性的要求是不一样的,这个需要根据具体的项目、具体需求和不同产品应用的特点进行分析。

(1)纯客户端软件,比如字处理软件(Word,PPT),媒体(音频/视频)播放软件(电脑自带的)等。这类软件对系统的功能测试要求是最低的,但是对兼容性和稳定性,可移植性有一定的要求。
(2)企业内部的客户端/服务端(C/S)应用系统。比如电子邮件,即时通信系统(飞Q,企业QQ)等,在系统功能测试需求上比纯客户端复杂,要求功能正确,稳定性能好。但是整体上看,对性能,安全性,兼容性要求不高。
(3)外部大型复杂网络应用系统,比如电子商务,网上银行,视频网站(腾讯,优酷)等,除了有复
杂的系统的功能测试需求外,在系统的性能,安全性,兼容性,容错性,可靠性等都有很高的要求。

3.2 具体的设计用例的方法

3.2.1 等价类

为了解决测试用例无法穷举的情况,把输入分成若干个等价类,每一个等价类当中选一个测试用例进行测试,如果这个测试用例测试通过,我们就认为这个测试用例代表的等价类测试通过。

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

  • 有效等价类:对于程序的规格说明书是合理的、有意义的输入数据构成的集合,利用有效等价类验
    证程序是否实现了规格说明中所规定的功能和性能
  • 无效等价类:根据需求说明书,不满足需求的集合。

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

3.2.2 边界值

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

一般设计测试用例的时候会把等价类和边界值结合在一起。

3.2.3 错误猜测法

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

这个方法强调的是对被测试软件的需求理解以及设计实现的细节把握,还有个人的经验和直觉。
错误推测法和目前流行的“探索式测试方法”的基本思想一致,这类方法在敏捷开发模式下的投入产出比很高,被广泛应运于测试。

根据测试人员的知识,经验去推断可能会出现问题的功能模块,有针对性的去设计测试用例

是一种补充的设计测试用例的方法,测试人员可以用其他设计测试用例的方法设计需求的测试用例,用错误猜测法作为一种补充的方式。

这个方法的缺点是难以系统化,并且过度依赖个人能力。

3.2.4 场景设计法

把各个孤立的功能点按照一定的策略组合起来,形成一个应用场景。

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,是测试用例更容易理解和执行。

典型的应用是用业务流把各个孤立的功能点串起来,为测试人员建立整体业务感觉,从而避免陷入功能细节,忽视业务流程要点的错误倾向。

总结:找出场景当中的每一个功能点,根据每一个功能点的正常和异常的情况去设计测试用例。

例如:ATM取款机取款场景(流程)

插卡——选择语言——输入密码——输入取款金额——取钱——退卡

  1. 成功插卡进ATM机,选择合适的语言,密码输入正确,输入小于银行卡金额的钱数,成功取钱,退卡(以上所有操作都在银行限定的长时间不操作吞卡时间范围之内)
  2. 卡插反了,ATM机给出“请重新插卡!”的提示,重新正确插卡,选择合适的语言,密码输入正确,金额输入正确,成功取钱,退卡;
  3. 插入了一个无效卡,ATM机给出“请重新插卡!”的提示,重新正确插卡,选择合适的语言,密码输入正确,金额输入正确,成功取钱,退卡;
  4. 插入消磁的银行卡,ATM机给出“该银行卡无效!”取款失败;
  5. 插入注销后的银行卡,ATM机给出“该银行卡无效!”取款失败;

3.2.5 因果图

因果图是一种简化了的逻辑图,能直观地表明程序输入条件(原因)和输出动作(结果)之间的相互关系。因果图法是借助图形来设计测试用例的一种系统方法,特别适用于被测试程序具有多种输入条件、程序的输出又依赖于输入条件的各种情况。

当输入有多个,不同的输入组合有不同的输出时,可以使用因果图法来设计测试用例。

因果图的需要掌握的基本知识:恒等,与,或,非。

1. 恒等
如果原因为真,那么结果必定为真。 例如:动物园运来大熊猫,动物园一定有大熊猫。
2. 与:
输入有多个条件,多个条件都为真的时候,输出为真。
3. 或:
输入有多个条件,其中一个条件为真,输出为真。
4. 非:
输入为真,输出为假。

如何使用因果图法设计测试用例?
1)找出所有的输入和输出;
2)确定不同的输入组合和输出之间的关系;
3)用因果图来表示输入和输出之间的关系;
4)根据因果图画判定表;
5)根据判定表写测试用例;

练习:
在这里插入图片描述
(1)输入:订单已提交,订单合计金额大于300元,有红包
输出:有优惠 没有优惠
(2)订单已提交,合计金额大于300元,没有红包,有优惠。
订单已提交,合计金额小于300元,有红包,有优惠。
订单已提交,合计金额大于300元,有红包,有优惠。
订单已提交,合计金额小于300元,没有红包,没有优惠。
订单没有提交,没有优惠(红包和金额组合4种情况略)。
(3) 因果图
在这里插入图片描述
(4)根据因果图画判定表
在这里插入图片描述
(5)写测试用例
(正式写测试用例的时候,一个都不能漏。最后四个测试用例必须分开写,分开测试。)
订单已经提交,金额大于300,有红包,有优惠
订单已经提交,金额大于300,没有红包,有优惠
订单已经提交,金额小于300,有红包,有优惠
订单已经提交,金额小于300,没有红包,没有优惠
订单没有提交,金额大于300,有红包,没有优惠
订单没有提交,金额大于300,没有红包,没有优惠
订单没有提交,金额小于300,有红包,没有优惠
订单没有提交,金额小于300,没有红包,没有优惠

3.2.6 正交设计法

研究多因素、多水平的一种测试用例的设计方法。
根据正交性,在所有的试验组合中找到最优的组合进行测试,通过这些最优组合的解来分析验证整个试验整体的结果。
特点:经济、高效

举个例子:邮箱注册(只讨论以下几个项的填写和不填写)
姓名,email,密码,确认密码,验证码,总共32种情况。
并不是32种情况都要测试,只要选出这几个输入(因素)的最优的取值(水平)组合进行测试。
较少的测试用例去判断整个功能的情况。

因素:输入
水平:输入的取值

正交表的组成:
:因素数(C),输入的个数
水平数:每一个因素的取值的最大个数(T)
:L=(水平数-1)*因素数+1

正交表的性质:
1:每一列各数据出现的次数一样多;
2:不同两列不同的数据组合出现的次数一样多。

根据正交表设计法设计测试用例的步骤:
(1)确定因素(输入)
(2)确定每一个因素的水平
(3)找出因素数和水平数
(4)根据因素数和水平数确定正交表的行和列
(5)根据正交表的性质去填充正交表里的数据
(6)根据正交表的每一行设计测试用例
(7)补充正交表里面没有的,但是个人认为可能比较关键的测试用例

例:邮箱注册测试(只讨论以下几个项的填写和不填写)
姓名,email,密码,确认密码,验证码
使用正交设计法:
(1)姓名,email,密码,确认密码,验证码;
(2)填写,不填写
(3)因素数:5 水平数: 2
(4)列=因素数=5,行=(水平数-1)*因素数+1=6
(5)填充数据
在这里插入图片描述
(6)测试用例:
姓名填写,email不填写,密码填写,确认密码填写,验证码不填写,注册失败。
姓名不填写,email填写,密码不填写,确认密码不填写,验证码不填写,注册失败。
姓名填写,email不填写,密码填写,确认密码不填写,验证码填写,注册失败。
姓名填写,email不填写,密码不填写,确认密码填写,验证码不填写,注册失败。
姓名不填写,email填写,密码填写,确认密码不填写,验证码填写,注册失败。
姓名不填写,email填写,密码不填写,确认密码填写,验证码填写,注册失败。
(7)补充测试用例
姓名填写,email填写,密码填写,确认密码填写,验证码填写,注册成功。
姓名不填写,email不填写,密码不填写,确认密码不填写,验证码不填写,注册失败。

小结:以上六种设计测试用例的方法都属于黑盒测试设计测试用例的方法。


http://chatgpt.dhexx.cn/article/bGb2xRIL.shtml

相关文章

刚面完的字节跳动Python软件测试用例编写(含思路)

测试用例编写是软件测试的基本技能;也有很多人认为测试用例是软件测试的核心;软件测试中最重要的是设计和生成有效的测试用例;测试用例是测试工作的指导,是软件测试的必须遵守的准则。 在这里我们不讨论以上的各种观点,但是综上所述,大家可以看出,测试用例编写这项软技…

怎么在windows文件资源管理器中打开ftp

背景:自己在家上网课,用VPN连接学校实验室内网,原来自己直接在此电脑中输入ftp://192.168.109.100/就可以打开,但是突然有一次用同样的方式输入,却自动把页面跳到了默认的IE浏览器打开,自己不喜欢这种方式&…

ADB文件管理器

VisualLog带了一个双栏Adb文件管理器,同时显示设备的文件夹与本地的文件夹,支持文件的上传,下载等。 点击菜单"视图->插件->Adb文件管理器",打开文件管理器 文件管理器分为三个部分:设备的目录树,设备…

接管理器是Android上最,10 款优秀的 Android 文件管理器

文件管理器是管理文件的软件,帮助用户处理日常工作,管理储存在本地和网络中的文件。所有文件管理器都提供了基本的操作如创建、打开、查看、编辑、移动和删除文件。许多Android文件管理器还提供了额外功能,如网络连接、应用程序管理、存档和压…

mysql对象资源管理器在哪里_文件资源管理器在哪

文件资源管理器在哪? 查看文件资源管理器的方法步骤: 方法一: 1、点“开始”,然后如下图所示的红框里输入“资源管理器”,搜出来之后就点击打开。 2、打开之后就是这样。 方法二: 1、敲击键盘的“WINR”,然…

用命令打开文件服务器资源管理器,Windows10使用命令参数打开文件资源管理器的方法...

在Windows10系统中,大家如果想打开文件资源管理器,一般会在任务栏上直接点击文件资源管理器图标来打开,或者在开始菜单中点击打开文件文件资源管理器。而今天小编要给大家分享的是,通过命令参数来打开文件资源管理器,不同的参数打开方式也不尽相同哦,下面我们一起来看看。…

VSCODE 关闭文件和资源管理器关联

最近使用vscode进行编程,有一个地方很不习惯,在编辑器页面每次切换不同的文件,左侧(右侧)的资源管理器中的项目文件夹,总是跟着一起变,很不习惯,就把这个关联去掉了,分享…

android使用es文件管理器,Android系统文件管理教程-ES文件浏览器用法!

Android系统文件管理教程-ES文件浏览器用法! 看完标题可能已经有人嚷嚷了,“文件管理有什么好说的,无非就是些复制粘贴之类的。”简单来说的确如此,但是对于Android系统,严谨一些的方案商是不会在其中集成文件浏览器软件的,比如HTC吧,旗下Android产品型号繁多,但官方固件…

linux文件管理器thunar,文件管理器:Nautilus,Thunar,PCManFM,Konqueror,Dolphin,Krusader

本文介绍六款Linux文件管理器,它们分别是Nautilus、Thunar、PCManFM、Konqueror、Dolphin、Krusader,可以在Ubuntu/Debian、Fedora等发行版上安装它们。即使可以通过bash或zsh之类的任何其他Shell程序从Linux命令行完全管理所有文件,但大多数用户还是喜欢使用专用的文件管理…

uni-app实现文件管理器(Android)

提示: 1. 仅适用于安卓 2. 若文件较多,打开会比较慢,可以自行优化 功能: 1. 文件列表页(/pages/index/index) - 展示从已选择添加的文件 2. 添加文件页(/pages/directory/directory) - 点击文件列表页右上角 , 进入该页…

mac打开服务器文件管理,6款热门受欢迎的mac文件管理软件~

操作简便,高效的mac文件管理工具推荐给大家,小编总结了几款超火热的软件分享给大家比较,总有一款适合您的,一起来看看吧~ 好用的mac文件管理软件 1、DCommander :双窗格文件资源管理器 将数据传输到服务器时,无缝FTP和SCP连接将使您的生活更轻松。 远程连接:无缝的FTP和…

华为鸿蒙文件管理器通用版,华为文件管理器官方下载_华为文件管理器最新版下载v10.6.2.300 - 数码资源网...

华为手机文件管理器是由华为官方为广大花粉用户打造的一款便捷文件管理器,不管你的手机是不是华为品牌,都可以使用这个软件来对手机中的文件进行管理;华为手机文件管理器安卓版,支持分类浏览并管理文件功能,手机中的视…

电脑文件加密软件哪个最好用:试试文件加密软件排行榜第一的EaseUS LockMyFile吧 | 军事级加密你值得拥有!!!

EaseUS LockMyFile是一款出色且安全可靠的军事级电脑文件加密管理软件,也叫易我文件加密软件,拥有文件隐藏、文件加锁、文件保护、读写监控、安全删除等诸多实用功能,能帮助大家锁定和隐藏闪存驱动器、外部USB 驱动器、内部硬盘驱动器以及局域…

NP管理器和MT哪个强_NP管理器2.7.6多功能文件管理器 媲美MT/功能更强大

東笙资源部落 【特别声明】所有软件皆来源于网上收集整理,仅供学习与交流技术,不得用作其它用途,如有侵犯你的权益,请联系我们,我们将于24小时内进行删除,谢谢你的配合! 软件介绍 NP管理器app是一个和MT管理器一样的系统管理工具, 安卓手机不需要root也可以使用。NP管理…

Qt实现文件管理器

Windows的资源管理器,大家很熟悉吧,可以放回上一级,查找到下一级………Qt中QDir 类可以实现显示文件系统目录的效果。 笔者的机器环境:Windows8.1 //fileview_widget.h#ifndef FILEVIEWWIDGET_H #define FILEVIEWWIDGET_H #i…

Ubuntu安装Nemo替代默认文件管理器Nautilus

Ubuntu安装nemo替代默认文件管理器Nautilus Nemo, the default Cinnamon file manager, is far superior to Gnome’s default Files application (Nautilus) in terms of features. Nemo was forked from Nautilus 3.4, so it includes features removed from Nautilus, like …

文件管理器android开源,寻找优秀的安卓文件管理器 五款文件管理器大评比

文件管理器是手机的必备软件,无论在以前的塞班还是如今的Android。没有文件管理器,即使手机里的各种文件和文件夹都乱了套不说,从电脑传输到手机里的精彩应用也没法打开。Android作为目前普及率最高的智能系统,市场内的文件管理器应用也不算少,但那些是优秀的作品呢?今天…

android文件管理器,10款优秀的Android文件管理器

原标题:10款优秀的Android文件管理器 文件管理器是管理文件的软件,帮助用户处理日常工作,管理储存在本地和网络中的文件。所有文件管理器都提供了基本的操作如创建、打开、查看、编辑、移动和删除文件。许多Android文件管理器还提供了额外功能,如网络连接、应用程序管理、存…

文件服务器资源管理器类似软件,好用的小众文件管理软件推荐给大家

在文件管理方面,很多小伙伴并不是非常在意,然随着时间的流逝,文件管理的重要性却越来越明显,同时也有很多文件管理软件帮助大家整理这些乱七八糟的文件。这里给大家提供几种好用又实惠的小众文件管理软件。 (一)远程文件管理 Pydio,原名ajaxplorer,该软件能够通过本地实现…

最好的Linux文件管理器,适用于 Linux 用户的 10 款优秀且免费的文件管理器

文件管理器对于管理 Linux 系统上的日常活动至关重要。可靠的文件管理器提供了更简单的导航方式,并使文件操作更快。Linux 提供了各种各样的此类工具来帮助我们充分利用自己的时间。为了帮助您找到适用于 Linux 的最佳文件管理器, 10 个值得尝试的应用程序。如果您是一位 Lin…