软件测试:测试用例详解

ops/2024/11/14 3:42:33/

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快    

一、通用测试用例八要素  

1、用例编号;   

2、测试项目;  

3、测试标题;

4、重要级别;   

5、预置条件;   

6、测试输入;   

7、操作步骤;   

8、预期输出

二、具体分析通用测试用例八要素

1、用例编号   

一般是数字和字符组合成的字符串,可以包括(下划线、单词缩写、数字等等),但是需要注意的是,尽量不要写汉语拼音,因为拼音的意义可能有好几种,有可能会导致乱码;

用例编号具有唯一性和易识别性。( 比如说我们唯一标识一个人:中国-上海市-xx区xx号-xx楼–xx室-xxx.这样标识的话就具有唯一性了。)

不同阶段的测试用例的用例编号有不同的规则:   

(1)系统测试用例:产品编号-ST-系统测试项名-系统测试子项名-XXX   

(2)集成测试用例:产品编号-IT-系统测试项名-系统测试子项名-XXX   

(3)单元测试用例:产品编号-UT-系统测试项名-系统测试子项名-XXX   

**其中产品编号也叫项目标识,每个公司都有若干不同的项目或者产品,如何来区分它们呢?这就需要有产品编号了,每个公司都有自己的一套定义产品编号的规则,并且每个现有产品的编号已经制定好了,直接拿过来用就可以了。   

**产品编号后的ST、IT、UT分别对应系统测试阶段、集成测试阶段、单元测试阶段。实际工作中有些公司会将产品编号以及测试阶段省略。   

**测试阶段后面就是测试项目名了,对应的是较大较系统的测试点。   

**测试项目名后面就是测试子项目名,有些测试是没有子项目名的,只有当测试项力度比较大的时候才会有成都市子项 (比如说:我们要测试用户能否成功登录这个功能,那我们就可以分为很多个子项,qq登录、邮箱登录等等)。   

**测试子项名后面就是具体的用例编号了,可以是数字:01、001、002等等。

2、测试项目   

测试项目对应的就是测试用例中的子项名。   

(1)系统测试用例:对应一个功能点(功能测试)、性能指标(性能测试)、界面中控件(GUI测试)等等。   

(2)集成测试用例:对应集成后的模块功能或者接口功能。   

(3)单元测试用例:对应函数名。   

3、测试标题   

测试标题考虑的是如何来完成测试项目,或者说从哪个角度来对测试项目进行测试,有的公司也取名为测试目的。   测试标题一定要简单、概要;体现测试的出发点和关注点。

4、重要级别   

用例的重要级别一般分成三个级别:高、中、低。   

高级别:对应保证系统基本功能、核心业务、重要特性、实际使用频率比较高的用例;   

中级别:对应重要程度介于高和低之间的测试用例;   

低级别:对应实际使用频率不高,对系统业务功能影响比较大的模块或功能的测试用例。   

**举个手机的例子:**   

(1)高级别需求:正常通话功能、短信功能;   

(2)中级别需求:拍照、联系人、MP3;   

(3)低级别需求:计步、收音机等等。   

还需注意的是:针对**正常情况**的测试用例的重要级别比针对**异常情况**的测试用例的重要级别要高。

5、预置条件   

测试用例在执行前需要满足一些前提条件,否则测试用例是无法执行的,这些前提条件就是预置条件。   

预置条件分为两种情况:   

(1)环境的设置。   

例如:测试word打开文件的功能,预置条件就是:需要提前准备被打开的文件;   

例如:登录成功的预置条件就是:该用户名已经注册过了。   

例如:购买商品成功的预置条件就是:后台已经配置好商品、发货区域、以及支付方式了。  (2)先要运行的其他用例,有些操作系统会比较复杂,如果都是从最开始的操作开始会导致用例写起来比较麻烦,这样可以在预置条件中设定要先运行的测试用例,后面的用例只需要写后续的操作就可以了。   

例如:对自动取款机进行测试,有针对的输入账户信息的测试,有对输入取钱金额的测试,后者的预置条件就可以写成输入正确账户信息的测试用例。   

注:具体预置条件的设置不同的公司会有自己的规定,比如有的公司是不允许第二种情况出现的。

6、测试输入   

用例执行过程中需要加工的外部信息,根据软件测试用例的具体情况,有手工输入、文件、数据库记录等。   

禁止过多描述性语言,若为文件,会有提示选择路径,最好写具体,让别人易懂易操作。

7、操作步骤   

明确描述测试执行过程中具体的操作步骤,以方便测试执行人员可以根据该操作步骤完成测试用例执行。  

8、预期输出   

预期输出是测试用例中非常重要的一部分,预期输出可以检验被测对象是否正常工作,如果我们的预期输出写的不完整不全面,整个测试用例就会受到影响。   

我们在写预期输出的时候可以从以下三个方面来考虑:   

(1)界面显示:在操作步骤完成之后,界面会有显示;比如说我们测试用户登录功能,界面可能会显示登录成功或者登录失败。   

(2)数据库的变化:在操作步骤完成之后,数据库中的记录会发生相应的变化,比如删除功能的测试,点击删除后,数据库中该记录会被删除。

(3)相关信息的变化:在操作步骤执行完成后,一些和被测对象相关的信息会发生变化,比如:注销功能的测试,点击注销后,以前能访问的页面将无法再访问。

三、测试用例模板

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

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。


http://www.ppmy.cn/ops/132544.html

相关文章

【数据结构实战】从零开始打造你的专属链表

🏝️专栏:【数据结构实战篇】 🌅主页:f狐o狸x 目录 一、链表的概念及结构 二、链表的分类 2.1 单向的或双向的 2.2 带头的或不带头的 2.3 循环或非循环 三、链表的实现 3.1 打印和动态申请一个结点 3.2 尾插一个数 3.3 头插一个…

ArrayList扩容机制

ArrayList的扩容机制是Java集合框架中的一个重要特性,它允许ArrayList在需要时自动增加其容量以容纳更多的元素。以下是关于ArrayList扩容机制的详细解释: 一、扩容触发条件 ArrayList的扩容通常发生在以下两种情况下: 添加元素时容量不足…

数字化转型实践:金蝶云星空与钉钉集成提升企业运营效率

数字化转型实践:金蝶云星空与钉钉集成提升企业运营效率 本文介绍了深圳一家电子设备制造企业在数字化转型过程中,如何通过金蝶云星空与钉钉的高效集成应对挑战、实施解决方案,并取得显著成果。集成项目在提高沟通效率、自动化审批流程和监控异…

lua入门教程:数字

在Lua中,数字(number)是一种基本数据类型,用于表示数值。以下是对Lua中数字的详细教程: 一、数字类型概述 Lua中的数字遵循IEEE 754双精度浮点标准,可以表示非常大的正数和负数,以及非常小的正…

Rust闭包(能够捕获周围作用域变量的匿名函数,广泛应用于迭代、过滤和映射)闭包变量三种捕获方式:通过引用(不可变引用)、通过可变引用和通过值(取得所有权)

文章目录 Rust 闭包详解闭包的定义与语法基本语法 闭包的特性- 环境捕获(三种捕获方式:通过引用、通过可变引用和通过值(取得所有权))示例代码 - 内存安全与生命周期示例代码1 示例代码2:闭包所有权转移示例…

bert-base-uncased处理文档

1.安装必要的库 确保安装 transformers 和 torch 库: pip install transformers torch 2.加载本地 BERT 模型和分词器 由于已将模型和分词器下载到本地,可以指定文件路径加载。确保路径与本地文件结构一致。 from transformers import BertTokenizer…

【Python】轻松实现机器翻译:Transformers库使用教程

轻松实现机器翻译:Transformers库使用教程 近年来,机器翻译技术飞速发展,从传统的基于规则的翻译到统计机器翻译,再到如今流行的神经网络翻译模型,尤其是基于Transformer架构的模型,翻译效果已经有了质的飞…

EasyExcel 学习之 导出 “提示问题”

EasyExcel 学习之 导出 “提示问题” 现象分析解决(伪代码)前端 POST 实现后端实现 现象 EasyExcel 支持导出 xlsx、xls、csv 三种文件格式。在导出过程中可能发生各种异常,当发生异常时应该提示错误信息而非导出一个错误的文件。 分析 首…