软件测试之-测试用例写作规范

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

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

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.无法访问必须用户才能访问的界面。

加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。未来的你肯定会感谢现在拼命的自己! 

 

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

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

相关文章

STL-queue和priority_queue的模拟实现

回顾 对于STL,我们已经知道了vector和list,而它们是STL中被称为六大组件之一的容器,我们还学习了模拟实现stack,而stack在STL中被称为六大组件之一的适配器,今天,我们来学习queue的模拟实现和priority_que…

java 课程信息管理系统Myeclipse开发mysql数据库struts2结构java编程计算机网页项目

一、源码特点 java 课程信息管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysql,使…

javascript基础五:深拷贝浅拷贝的区别?如何实现一个深拷贝?

一、数据类型存储 JavaScript中存在两大数据类型: 基本类型引用类型 基本类型数据保存在在栈内存中 引用类型数据保存在堆内存中,引用数据类型的变量是一个指向堆内存中实际对象的引用,存在栈中 二、浅拷贝 浅拷贝,指的是创建新…

( 数组) 209. 长度最小的子数组——【Leetcode每日一题】

❓209. 长度最小的子数组 难度:中等 给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其和 ≥ target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,…

在线Excel绝配:SpreadJS 16.1.1+GcExcel 6.1.1 Crack

前端:SpreadJS 16.1.1 后端: GcExcel 6.1.1 全能 SpreadJS 16.1.1此版本的产品中包含以下功能和增强功能。 添加了各种输入掩码样式选项。 添加了在保护工作表时设置密码以及在取消保护时验证密码的支持。 增强了组合图以将其显示为仪表图。 添加了…

Tugraph的设计和源码初步解析

1. Tugraph Tugraph是一款开源的性能优秀的图数据库,该图数据库使用多版本的BTree作为数据的存储引擎,同时设置了点边数据在这个存储引擎上的布局(主要考虑数据的局部性),从而达到高性能查询的目的。本文主要从Tugrap…

研发工程师玩转Kubernetes——自动扩缩容

在《研发工程师玩转Kubernetes——使用Deployment进行多副本维护》一文中,我们通过Deployment实现了多副本维护——即维持在一个确定数量的副本个数。而在现实场景中,我们往往需要根据服务的压力,采用水平(横向)扩容的…

Springboot +spring security,前后端分离时的security处理方案(二)

一.简介 在前后端分离这样的开发模式下,前后端的交互都是通过 JSON 来进行数据传递的,无论登录成功还是失败,都不会有服务端跳转或者客户端跳转之类的操作。 也就是说无论登录成功还是失败,服务端都会返回一段登录成功或失败的 …

使用【Python+Appium】实现自动化测试

一、环境准备 1.脚本语言:Python3.x IDE:安装Pycharm 2.安装Java JDK 、Android SDK 3.adb环境,path添加E:\Software\Android_SDK\platform-tools 4.安装Appium for windows,官网地址 Redirecting 点击下载按钮会到GitHub的…

解决dpdk reserve的内存返回的虚拟地址和iova地址一样的问题

1. 背景: 在ubuntu20.04上用dpdk API: rte_memzone_reserve_aligned("L1L2_PCIE_MEMORY", 1.5*1024*1024*1024, rte_socket_id(), RTE_MEMZONE_1GB|RTE_MEMZONE_IOVA_CONTIG, RTE_CACHE_LINE_SIZE); 分配1.5…

如何在 GNU Linux 上通过 Nvm 安装 Node 和 Npm?

Node.js 是一个流行的 JavaScript 运行时环境,用于开发服务器端和网络应用程序。它带有一个强大的软件包管理器 npm,可以方便地安装和管理 JavaScript 包和依赖项。在 GNU/Linux 系统上,使用 Nvm(Node Version Manager&#xff09…

Framework开发环境搭建

Framework开发环境搭建 开启Android Framework之旅,一步步记录自己学习过程。 硬件配置 RAM:最低16GB,建议32GB,有条件64GB,内存越高,编译时间越短ROM:最低400GB,代码250GB构建15…

Svn安装

目录 一. 软件环境 二. SVN服务端 1. yum安装svn 2. 查看安装的文件列表 3. 建立版本库 3.1 修改数据存储默认位置 3.2 使用svnadmin建立版本库 4. 配制 4.1 添加用户 4.2 配制读写权限 4.3 配制服务 5. 启动服务 5.1 停止服务 5.2 启动服务 5.3 拉取项目 三.…

Zookeeper集群 + Kafka集群

Zookeeper 概述 Zookeeper 定义 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 Zookeeper 工作机制 Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的…

CodeForces.1786A2.发牌.[中等][flg标识][数学规律][双色牌]

题目描述: 题目解读: 发牌问题,给两人发双色牌,同样还是 给a发1张,然后给b发2,3张; 给a发4,5张,给b发6,7张; 给a发8,9张&#xff…

《最新出炉》Python+Playwright自动化测试-2-playwright的API及其他知识

一.简介 上一篇我已经将PythonPlaywright的环境搭建好了,而且也简单的演示了一下三款浏览器的启动和关闭,是不是很简单啊。今天主要是把一篇的中的代码进行一次详细的注释,然后说一下playwright的API和其他相关知识点。那么首先将上一篇中的…

Spring Cloud面试题

组件 Spring Cloud Eureka:服务注册与发现 Spring Cloud Zuul:服务网关 Spring Cloud Ribbon:客户端负载均衡 Spring Cloud Feign:声明性的Web服务客户端 Spring Cloud Hystrix:断路器 Spring Cloud Config&#xff1…

[C++]octomap安装后测试

测试环境&#xff1a; vs2019 octomap1.9.6 release x64 代码&#xff1a; #include <octomap/octomap.h> #include <octomap/OcTree.h> using namespace std; using namespace octomap; void print_query_info(point3d query, OcTreeNode* node) { if (…

矿井水除氟,污水除氟的工艺分析

高矿化度的废水是指含有高浓度溶解性矿物质的废水&#xff0c;通常指的是含有高浓度钠、钙、镁、铁、铝、钾等离子的废水。这些离子通常来自于废水所处的环境、工业或生产过程中使用的原材料和化学品。高矿化度的废水通常具有高盐度、高电导率、高硬度等特征&#xff0c;对环境…

Vivado综合属性系列之十二 BLACK_BOX

目录 一、前言 二、BLACK_BOX ​2.1 属性说明 ​2.2 工程代码 ​2.3 结果 一、前言 ​在调试中&#xff0c;有时不需要知道一个模块或实例的具体实现&#xff0c;或者需要使其对外属于不可见&#xff0c;只知道它的输入输出&#xff0c;即像一个黑盒&#xff0c;此时可以对模…