史上最详细的测试用例写作规范

软件测试用例得出软件测试用例的内容,其次,按照软件测试写作方法,落实到文档中,两者是形式和内容的关系,好的测试用例不仅方便自己和别人查看,而且能帮助设计的时候考虑的更周。

一个好的测试用例必须包含足够的内容,将这些内容可以拆分为八个要素:用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤、预期输出。

1、用例编号
  1)规则:是由字符和数字组成的字符串,具有唯一性、易识别性。2)不同阶段的测试用例的用例编号--系统测试用例:产品编号_ST_系统测试项名_系统测试子项名_XXX(具体用例序号)--集成测试用例:产品编号_IT_集成测试项名_集成测试子项名_XXX(具体用例序号)--单元测试用例:产品编号_UT_单元测试项名_单元测试子项名_XXX(具体用例序号)
2、测试项目

  1)规则:对应测试用例编号中的测试子项名
  2)不同阶段的测试用例项目的具体规则
     __系统测试用例:对应一个功能点(功能测试)、性能指标(性能测试)界面中控件(GUI测试)等,即软件需求项
     __集成测试用例:集成后的模块功能名或者内部的接口名
     __单元测试用例:被测试的函数名

3、测试标题(TestCase Title)

  1)规则:体现测试的出发点、关注点以及测试用例期望的测试结果;
          将测试项目和测试标题串在一起表示的是在“测试标题”情况下测试“测试项目”。

4、重要级别/优先级别(TestCase Priority)

  1)含义:用例的重要级别一般分为3个等级:高、中、低,具体划分依据:
       (1)高级别:对应保证系统基本功能、核心业务、重要特性、实际使用频率比较高的测试用例;
       (2)中级别:对应重要程度介于高和低之间的测试用例;
       (3)低级别:对应实际使用频率不高,对系统业务功能影响不大的模块或功能的测试用例。
  2)测试用例的优先级作用
       (1)便于制定测试规程(测试用例执行的顺序)即测试过程;
       (2)回归测试中依据优先级可以选择不同方法;
       (3)自动化测试
       (4)缺陷报告严重性和优先级

@测试用例写作范例(一)

以下测试用例是针对用例编号、测试项目、测试标题、重要级别进行举例说明:

   范例【1】:系统测试用例
            *1*针对计算器中加法功能进行测试
                  * 用例编号 CALC_ST_ADD_01
                  * 测试项目 测试加法功能
                  * 测试标题 两个合法数相加得到合法的和
                  * 重要级别 高
            *2*针对word中打开文件功能进行测试
                  * 用例编号 WORD_ST_FileMenu_OpenFile_08
                  * 测试项目 测试打开文件功能
                  * 测试标题 打开合法doc文档
                  * 重要级别 高
            *3*针对word中新建空白文件功能进行测试
                  * 用例编号 WORD_ST_FileMenu_NewFile_BlankFile_01
                  * 测试项目 测试新建空白文件功能
                  * 测试标题 内存充足时新建空白文档
                  * 重要级别 高
            *4*针对手机拨打紧急号码进行测试
                 (1)  * 用例编号 HUAWEI3c_ST_CALL_URGENTCALL_001
                      * 测试项目 测试手机在没有SIM卡的情况下可以拨打紧急号码
                      * 测试标题 无SIM卡时,在NOKIA的网络环境中拨打119
                      * 重要级别 高
 
                 (2)  * 用例编号 HUAWEI3c_ST_CALL_URGENTCALL_001
                      * 测试项目 测试手机在没有SIM卡的情况下可以拨打紧急号码
                      * 测试标题 无SIM卡时,在NORTEL的网络环境中拨打119
                      * 重要级别 高
 
                 (3)  * 用例编号 HUAWEI3c_ST_CALL_URGENTCALL_001
                      * 测试项目 测试手机在没有SIM卡的情况下可以拨打紧急号码
                      * 测试标题 无SIM卡时,在ERICSIION的网络环境中拨打119
                      * 重要级别 高
   范例【2】:集成测试用例
            *1*针对加法函数接口进行测试
                  * 用例编号 CALC_IT_AddInterface_01
                  * 测试项目 测试加法接口函数
                  * 测试标题 x>y求和
                  * 重要级别 高
               AddInterface对应加法函数接口。
   范例【3】:单元测试用例
            *1*针对ctrl函数进行测试
                  * 用例编号 CALC_UT_Ctrl_01
                  * 测试项目 测试ctrl函数
                  * 测试标题 x=y调用减法函数
                  * 重要级别 高
               Ctrl对应ctrl函数。

5、预置条件(Test Pre_condition)

  1)含义:测试用例在执行时需要满足一些前提条件,否则测试用例是无法执行的,这些前提条件就是预置条件,设置预置条件时经常分为两种情况:
       (1)环境的设置,例如测试word文档打开功能,需要提前准备打开的文档,这就是预置条件。
       (2)先要运行其他的测试用例,例如测试自动取款机功能,有输入账户信息的测试用例和输入取钱金额的测试用例,则后者的预置条件就可以写为输入正确账户信息的测试用例。
   2)注意(PS):测试预置条件--是针对单个用例
                 测试环境--针对所有用例(测试环境有问题会导致测试活动挂起/暂停)
@测试用例写作范例(二)
以下测试用例是针对用例编号、测试项目、测试标题、重要级别、预置条件进行举例说明:

   范例【1】:系统测试用例
            *1*针对自动取款机的取款功能进行测试
                  * 用例编号 ATM_ST_Account_01
                  * 测试项目 测试ATM的账户识别功能
                  * 测试标题 输入正确的账户信息
                  * 重要级别 高
                  * 预置条件 无
 
                  * 用例编号 ATM_ST_GetMoney_01
                  * 测试项目 测试ATM的取款功能
                  * 测试标题 取款金额不是50的倍数
                  * 重要级别 高
                  * 预置条件 ATM_ST_Account_01

6、测试输入(Test Input)

  1)含义:指测试执行过程中需要加工的外部信息。
  2)规则:避免用描述性的语言,要具体;
          根据软件测试用例的具体情况,有手工输入、文件、数据库记录等。

7、操作步骤(Operation/Execute Steps)

  1)规则:执行当前测试用例需要经过的操作步骤,需要明确的给出每一个步骤的描述,测试用例执行人员可以根据该操作步骤完成测试用例执行。
@测试用例写作范例(三)
以下测试用例是针对用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤进行举例说明:

   范例【1】:系统测试用例
            *1*针对word中打开文件功能进行测试
                  * 用例编号 WORD_ST_FileMenu_OpenFile_08
                  * 测试项目 测试打开文件功能
                  * 测试标题 打开合法doc文档
                  * 重要级别 高
                  * 预置条件 新建WORD_ST_FileMenu_OpenFile_08.doc文件,其中只有“helloWorld”字符串
                  * 测试输入 WORD_ST_FileMenu_OpenFile_08.doc
                  * 操作步骤 1.点击word文件菜单中“打开”子菜单;
                  *         2.选择WORD_ST_FileMenu_OpenFile_08.doc,点击打开按钮。

8、预期输出(Expected Results)

  1)含义:预期输出是测试用例中非常重要的部分,要想判断被测对象是否正常工作,都需要通过预期输出来进行判定。
    在编写预期输出时可以从以下三个方面来进行考虑:
       (1)界面显示(操作步骤执行完毕后,界面显示的提示信息)
       (2)数据库的变化(操作步骤执行完毕后,数据库中的记录会发生相应的变化)
       (3)相关信息的变化(操作步骤执行完毕后,一些和被测对象相关的信息会发生变化)
@测试用例写作范例(四)
以下测试用例是针对用例编号、测试项目、测试标题、重要级别、预置条件、测试输入、操作步骤及预期输出进行举例说明,即完整的测试用例写作方法,以系统测试用例为例:

   范例【1】针对论坛的注册功能进行测试
                  * 用例编号 DISCUZ_ST_Register_02
                  * 测试项目 测试注册功能
                  * 测试标题 用户名长度不够
                  * 重要级别 中
                  * 预置条件 无
                  * 测试输入 参数1 用户名:yinjidudu
                  *         参数2 密码:yinjidudu
                  *         参数3 密码确认:yinjidudu
                  *         参数4 邮件地址:yinjidudu@126.com
                  * 操作步骤 1.进入注册页面;
                  *         2.顺序输入以上4个参数;
                  *         3.点击注册按钮。
                  * 预期输出 1.界面提示注册失败;
                  *         2.数据库中查不到yinjidudu用户;
                  *         3.无法访问必须用户才能访问的界面。                                
                              
   范例【2】针对论坛的帖子删除功能进行测试
                  * 用例编号 DISCUZ_ST_DeletePost_06
                  * 测试项目 测试删帖功能
                  * 测试标题 删除多个帖子
                  * 重要级别 高
                  * 预置条件 登录成功且该用户有删帖权限
                  * 测试输入 无
                  * 操作步骤 1.进入删帖页面;
                  *         2.选择4篇帖子;
                  *         3.点击删除按钮,并确认。
                  * 预期输出 1.界面提示删除成功;
                  *         2.数据库中查不到这4篇帖子;
                  *         3.无法访问这4篇帖子对应的链接,提示帖子已删除。  
   范例【3】针对论坛的注销功能进行测试
                  * 用例编号 DISCUZ_ST_LogOut_03
                  * 测试项目 测试注销功能
                  * 测试标题 编辑帖子并上传了附件时注销
                  * 重要级别 高
                  * 预置条件 登录成功
                  * 测试输入 无
                  * 操作步骤 1.编辑帖子,并上传1个附件文件;
                  *         2.点击注销按钮。
                  * 预期输出 1.界面提示注销成功;
                  *         2.数据库中session表中该用户状态发生变化;
                  *         3.无法访问必须用户才能访问的界面。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IDEA JAVA项目 导入JAR包,打JAR包 和 JAVA运行JAR命令提示没有主清单属性

一、导入JAR包 1、java项目在没有导入该jar包之前,如图:2、点击 File -> Project Structure(快捷键 Ctrl Alt Shift s),点击Project Structure界面左侧的“Modules”如图:3.在 “Dependencies” 标签…

《网络协议》03. 传输层(TCP UDP)

title: 《网络协议》03. 传输层(TCP & UDP) date: 2022-09-04 22:37:11 updated: 2023-11-08 15:58:52 categories: 学习记录:网络协议 excerpt: 传输层、UDP、TCP(可靠传输,流量控制,拥塞控制&#xf…

ESP32 下蓝牙播放音乐

之前发过一贴: esp32 下蓝牙播放音乐歌词的获得_esp32 蓝牙音频-CSDN博客 说的是esp32 蓝牙接收音频流同步获得歌词的方案,但是有个很核心的内容由于硬件原因没有谈及,就是播放音乐。 这几天被抖音上各种水桶卡顿刺激了,经过一…

python+requests接口自动化测试

原来的web页面功能测试转变成接口测试,之前大多都是手工进行,利用postman和jmeter进行的接口测试,后来,组内有人讲原先web自动化的测试框架移驾成接口的自动化框架,使用的是java语言,但对于一个学java&…

【算法 | 模拟No.4】AcWing 756. 蛇形矩阵 AcWing 40. 顺时针打印矩阵

个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【AcWing算法提高学习专栏】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程&a…

大文件传输小知识 | UDP和TCP哪个传输速度快?

在网络世界中,好像有两位“传输巨头”常常被提起:UDP和TCP。它们分别代表着用户数据报协议和传输控制协议。那么它们是什么?它们有什么区别?它们在传输大文件时的速度又如何?本文将深度解析这些问题,帮助企…

最近的总结(2023.11.8)

菜鸟本来是不打算写文章的,奈何1500的曝光券让我心痒难耐 菜鸟主要是想把这篇博客(平凡人的一生的意义是什么?)推出去,看看大家的看法! 不过既然写,菜鸟自然要好好写,就来聊聊最近…

Day25力扣打卡

打卡记录 寻找旋转排序数组中的最小值(二分) 链接 由于是旋转排序数组,所以整个数组有两部分是递增的,选取右侧最后元素,即可将整个数组分为大于该元素和小于该元素,碰头地段即为最小值。 class Solutio…

串口通信(11)-CRC校验介绍算法

本文为博主 日月同辉,与我共生,csdn原创首发。希望看完后能对你有所帮助,不足之处请指正!一起交流学习,共同进步! > 发布人:日月同辉,与我共生_单片机-CSDN博客 > 欢迎你为独创博主日月同…

如何记录血压的波动情况

import pandas as pd from plotnine import * import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] [Microsoft YaHei] 记录时间(time)、收缩压(SBP)、舒张压(DBP): df pd.DataFrame({ time: [2023-11-01 08:30, 2023-11-02 21:00, 2023-11-0…

AI:73-结合语法知识的神经机器翻译研究

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…

【STM32】STM32的Cube和HAL生态

1.单片机软件开发的时代变化 1.单片机的演进过程 (1)第1代:4004、8008、Zilog那个年代(大约1980年代之前) (2)第2代:51、PIC8/16、AVR那个年代(大约2005年前) (3)第3代:51、PIC32、Cortex-M0、…

chatglm3-6b记录问答对

# 打开文件,第二个参数是打开文件的模式,a代表追加,也就是说,打开这个文件之后直接定位到文件的末尾 file open(chatlog.txt, "a") # 写入数据 file.write(ask:prompt_text\n) file.write(response:response\n) # 关闭文件 fil…

【FastCAE源码阅读7】视图方向切换按钮实现原理

在FastCAE工具栏上有视图切换按钮,如下图所示: 本文介绍如何实现。 FastCAE集成了Python解析器,当单击按钮时,中间用Python执行的,最后调用MainWindow.dll库接口实现的。 具体的Python代码在Python模块的py文件夹下的…

Flink -- 状态与容错

1、Stateful Operations 有状态算子: 有状态计算,使用到前面的数据,常见的有状态的算子:例如sum、reduce,因为它们在计算的时候都是用到了前面的计算的结果 总结来说,有状态计算并不是独立存在的&#xf…

什么GAN生成对抗网络?生成对抗网络可以干什么?

生成对抗网络(Generative Adversarial Nets,简称GAN)。神经网络分很多种,有普通的前向传播网络,有分析图片的CNN卷积神经网络,有分析系列化数据比如语言、文字的RNN循环神经网络,这些神经网络都是用来输入数据,得到想要的结果,我们看中的是这些神经网络中很好地将数据与…

CSS 移动端 1px(线条/边框) 不同机型上显示粗细不同,解决办法

由于不同的手机有不同的像素密度导致的。如果移动显示屏的分辨率始终是普通屏幕的2倍&#xff0c;1px的边框在devicePixelRatio2的移动显示屏下会显示成2px&#xff0c;所以在高清瓶下看着1px总是感觉变胖了 <!DOCTYPE html> <html lang"en"> <head&g…

2023.11.10联赛 T4题解

题目大意 题目思路 我们考虑分块处理。 我们可以维护一个状态&#xff0c;表示块内每个字母对应的真实字母&#xff0c;因为只有 3 3 3个字母&#xff0c;所以只有 6 6 6种情况。 对于每一个块&#xff0c;我们可以对于每种状态、每种块&#xff0c;预处理出以 A A A或 B B …

Zotero详细功能补充!熟练使用!【进阶版,持续更新】

Zotero安装请参见文章Zotero安装 1.改变条目文件夹 如果直接选择条目直接进行移动&#xff0c;能移动成功&#xff0c;但是原来文件夹和目标文件夹都会存在&#xff0c;实际是复制&#xff01; 如果只想保留在一个文件夹里面&#xff0c;可以选中条目&#xff0c;右击-从分…

LeetCode算法题解(回溯,难点)|LeetCode37. 解数独

LeetCode37. 解数独 题目链接&#xff1a;37. 解数独 题目描述&#xff1a; 编写一个程序&#xff0c;通过填充空格来解决数独问题。 数独的解法需 遵循如下规则&#xff1a; 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分…