测试用例编写规范

news2024/11/28 19:01:53

1.1目的

统一测试用例编写的规范,为测试设计人员提供测试用例编写的指导,提高编写的测试用例的可读性,可执行性、合理性。为测试执行人员更好执行测试,提高测试效率,最终提高公司整个产品的质量。

1.2使用范围

适用于对产品的业务流程、功能测试用例的编写。

二 测试用例编写原则

2.1系统性

1、对于系统业务流程要能够完整说明整个系统的业务需求、系统由几个子系统组成以及它们之间的关系;

2、对于模块业务流程要能够说明清楚子系统内部功能、重要功能点以及它们之间的关系;

2.2连贯性

1、对于系统业务流程来说,各个子系统之间是如何连接在一起,如果需要接口,各个子系统之间是否有正确的接口;如果是依靠页面链接,页面链接是否正确;

2、对于模块业务流程来说,同级模块以及上下级模块是如何构成一个子系统,其内部功能接口是否连贯;

2.3全面性

1、应尽可能覆盖程序的各种路径

2、应尽可能覆盖系统的各个业务

3、应考虑存在跨年、跨月的数据

4、大量数据并发测试的准备

5、系统中各功能、业务的异常情况

2.4正确性

1、输入用户实际数据以验证系统是否满足需求规格说明书的需求。

2、测试用例中的测试点应保证至少覆盖需求规格说明书中的各项功能。

2.5符合正常业务惯例

1、测试数据应符合用户实际工作业务流程

2、兼顾各种业务变化的可能

3、要符合当前业务行业法律,法规。

2.6仿真性

  人名、地名、电话号码等应具有模拟功能,符合一般的命名惯例。

2.7容错性(健壮性)

程序能够接收正确数据输入并且产生正确(预期)的输出,输入非法数据(非法类型、不符合要求的数据、溢出数据等),程序应能给出提示并进行相应处理。

三 测试用例设计方法

3.1 等价类划分法

将所有可能的输入数据(有效的和无效的)划分成若干个等价类。

3.2 边界值分析法:

指对输入的边界条件进行分析,设计出针对边界值的测试用例。

3.3 因果图法:

  就是利用图解法分析软件输入(原因)和输出条件(结果)之间的关系,以设计测试用例的方法。因果图法适合于检查程序输入条件的多种情况的组合,并最终生成判定表,来获得对应的测试用例。

3.4功能图法

  功能图是描述程序状态变化、转移的过程,因为软件运行或操作的过程可以看作是其状态不断发生变化的过程。测试用例的设计就是如何覆盖所有软件表现出来的状态,即在满足输入/输出的一组条件下,软件运行是一系列有次序的、受控制的状态变化过程。

3.5错误推测法

推测法主要依赖经验、直觉来作出简单的判断甚至是猜测,给出可能存在缺陷的条件、场景等,在找到缺陷后,设计出相应的测试用例。

3.6 正交实验设计方法

  主要步骤是:

(1) 对软件需求规格说明中的功能要求进行划分(层层分解与展开),分解成具体的、相对独立的基本功能。

(2) 根据基本功能的质量需求,找出影响其功能实现的操作对象和外部因素,每个因素的取值可以看作水平,多个取值就存在多个水平。

(3) 确定待测试软件中所有因素及其权值,这是测试用例设计的关键,确保全面、准确。

  权值是依据各因素的影响范围、发生的频率和质量的需求来确定的。

(4) 加权筛选,生成因素分析表。

(5) 利用正交表构造测试数据集,正交表的每一行,就是一条测试用例。考虑交互作用不可忽略的处理因素和不可混杂的原则,有交互作用的组合优先安排。

利用正交实验设计方法设计测试用例,可控制生成的测试用例数量,覆盖率高且测试效率高。

3.7接口间测试

测试各个模块相互间的协调和通信情况,数据输入输出的一致性和正确性。

3.8数据库测试

依据数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行测试。

3.9可理解(操作)性

理解和使用该系统的难易程度(界面友好性)。

3.10可移植性

在不同操作系统及硬件配置情况下的运行性。

四 测试用例编写规范

4.1测试用例命名规则

以功能模块和业务流程进行命名。

4.2测试用例编号规则

用例编号规则:以测试模块名称的第一个字母进行命名(大写),若测试模块名称比较长时,可进行简写。一般简拼不超过5个字母:如:

  • 测试模块为“用户管理”,功能编号为“YHGL”;
  • 测试模块为“行政单位管理”,功能编号为“DWGL”
  • 功能编号规则直接以001、002、003…..

4.3测试用例文档书写内容

1、被测试对象的介绍

2、测试范围与目的

3、测试环境与测试辅助工具的描述

4、功能测试用例主要元素

  • 前置/操作描述:

1、前置条件(可选):系统权限配置或前、后台配置描述(所有进行操作的前提条件)。                                

2、操作:测试的操作步骤描述。     

  • 功能点: 功能点描述。
  • 输入数据:前期数据准备。
  • 预期结果:描述输入数据后程序应该输出的结果。
  • 测试结果:描述本条用例的实际测试情况,并判断实际测试结果与预期结果的差别。
  • Bug编号/Bug简要描述:需要进流程的对应事物流程的编号,及简要说明
  • 备注:测试过程中遇到的问题等情况说明。

五 编写用例注意事项

5.1功能检查

1 、功能是否齐全,例如:增加、删除、修改,查询条件是否合理,用户使用是否方便

2 、功能是否多余

3 、功能是否可以合并

4 、功能是否可以再细分

5 、软件流程与实际业务流程是否一致

6 、软件流程能否顺利完成

7 、各个操作之间的逻辑关系是否清晰

8 、各个流程数据传递是否正确

9 、模块功能是否与需求分析及概要设计相符

10、批量增加、批量修改,增加、修改等录入比较频繁的界面或录入数据量较多的界面,是否支持全键盘或全鼠标操作,并且使用通用的键实现数据字段的有序切换

5.2 面向用户的考虑

1 、操作方便性,如:按键次数是否最少,并不以开发实现技术限制为限制,而是以用户使用方便性和应用软件约定和通常的快捷键来实现提出合理建议

2 、易用性,面对用户的操作是否简单易学

3 、智能化考虑

4 、提示信息是否模糊不清或有误导作用。错误信息是否有用户语言风格的出错后续处理建议提示

5 、要求用户进行的操作是否多余,能否由系统替代。系统升级后,用户能否不做任何操作自动进行所有升级的数据、环境等准备工作,包括删除缓存等动作

6 、能否记忆操作的初始环境,无需用户每次都进行初始化设置

7 、是否不经确认就对系统或数据进行重大修改

8 、能否及时反映或显示用户操作结果

9 、操作是否符合用户习惯,比如:热键

10 、各种选项的可用及禁用是否及时合理

11 、某些相似的操作能否做成通用模块

5.3数据处理

5.3.1输入数据

1 、边界值

2 、大于边界值

3 、小于边界值

4 、最大个数

5 、最大个数加 1

6 、最小个数

7 、最小个数减 1

8 、空值、空表

9 、极限值

10 、 0 值

11 、负数

12 、非法字符

13 、日期、时间控制

14 、跨年度数据

15 、数据格式

 16 、数据之间的关联性、逻辑性,数据范围、格式限制是否合乎日常情理,如年龄不应为负数,身份证位数必须为15或18位且与性别严格相关联,与生日可以有区别(考虑到阴历阳历的问题)但不相同时给予提示,私人电话号码的长度且国内电话只能有数字及短横线标识区号等

5.3.2数据处理

1 、处理速度

2 、处理能力

3 、数据处理正确率

4 、计算方式及计算结果准确性,数字精度的取舍问题,汇总数据与分项数据累加的误差问题

5.3.3输出结果

1 、正确率

2 、输出格式

3 、预期结果

4 、实际结果,金额数字的可能要验证小写大写的一致性,大写可能要测试多种金额的大写,包括没有整数的情况下,没有小数的情况下,带整数和小数的情况下……

5.4软件流程测试

1 、反流程操作

2 、反逻辑操作

3 、重复操作

4 、反业务流程操作

 5 、违反流程的打乱流程的不按操作手册的乱操作

五 历史版本

5.1 版本记载

版本每次改动,需要填写版本号,修改人、相关说明等信息。

版本号:以当前项目类型+年份+月+日期来命名

版本

状态

作者

参与者

日期

备注

Ncms20110720

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

 

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取   

 

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

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

相关文章

数字人实训室助推元宇宙人才培养

如今,全身动作捕捉设备已经大量应用在影视、动画、游戏领域,在热门的元宇宙内容领域中,全身动作捕捉设备逐步发挥着重要的作用,在包括体育训练、数字娱乐虚拟偶像、虚拟主持人、非物质文化遗产保护等等场景,数字人实训…

第5章 处理GET请求参数

1 什么是GET请求参数 表单GET请求参数是指在HTML表单中通过GET方法提交表单数据时所附带的参数信息。在HTML表单中,可以通过表单元素的name属性来指定表单字段的名称,通过表单元素的value属性来指定表单字段的值。当用户提交表单时,浏览器会将…

【数据结构】有关栈和队列相互转换问题

文章目录 用队列实现栈思路实现 用栈实现队列思路实现 用队列实现栈 Leetcode-225 用队列实现栈 思路 建立队列的基本结构并实现队列的基本操作 这部分这里就不多说了,需要的可以看笔者的另一篇博客 【数据结构】队列详解(Queue) 就简单带过一下需要实现的功能 …

金融业开源软件应用 评估规范

金融业开源软件应用 评估规范 1 范围 本文件规定了金融机构在应用开源软件时的评估要求,对开源软件的引入、维护和退出提出了实现 要求、评估方法和判定准则。 本文件适用于金融机构对应用的开源软件进行评估。 2 规范性引用文件 下列文件中的内容通过文中的规范…

数据科学:使用Optuna进行特征选择

大家好,特征选择是机器学习流程中的关键步骤,在实践中通常有大量的变量可用作模型的预测变量,但其中只有少数与目标相关。特征选择包括找到这些特征的子集,主要用于改善泛化能力、助力推断预测、提高训练效率。有许多技术可用于执…

【kettle012】kettle访问FTP服务器文件并处理数据至PostgreSQL(已更新)

1.一直以来想写下基于kettle的系列文章,作为较火的数据ETL工具,也是日常项目开发中常用的一款工具,最近刚好挤时间梳理、总结下这块儿的知识体系。 2.熟悉、梳理、总结下FTP服务器相关知识体系 3.欢迎批评指正,跪谢一键三连! kettle访问FTP服务器文件并处理数据至PostgreS…

【Unity UI系统介绍】

Unity UI系统介绍 想了解更多游戏开发知识,可以扫描下方二维码,免费领取游戏开发4天训练营课程 Unity UI 是 Unity 引擎中的一套用户界面(UI)系统,允许开发者创建和管理游戏的用户界面。 Canvas:Canvas 是 Unity UI 的核心组件…

如何3分钟快速训练一个属于自己的(暴躁老哥、猫娘)AI大模型?(弱智吧经典问题为例)

首先我们进入谷歌Gemini:Gemini - Google DeepMind 然后我们进入官网看见左边的几个选项 选择Create new prompt创建新的提示 选择结构化提示 点击action可以增加列,也就是设置更多回答或者选项 那么那个温度(Temperature)是什么…

二、安装、使用Grafana

目录 一、安装Grafana 二、使用grafana 一、安装Grafana 官网:https://grafana.com/ 账号:admin 密码:xxxxxx [rootrabbitmq_2 prometheus]# [rootrabbitmq_2 prometheus]# wget https://dl.grafana.com/enterprise/release/grafana-enter…

redis安装与群集

项目需求: 1.安装redis 2.测试redis性能,100个并发连接,100000个请求测试 3.在当前数据库下创建键值对 a11,a22,a33,a44,a55 4.查看键值对 5.将a1改名为a11,将a2删除 5.将a3移动到1号数据库 6搭建redis集群(可选) 测试环境…

第六十节 Java设计模式 - 过滤器/标准模式

Java设计模式 - 过滤器/标准模式 过滤器模式使用不同的条件过滤对象。 这些标准可以通过逻辑操作链接在一起。 过滤器模式是一种结构型模式。 例子 import java.util.List; import java.util.ArrayList;class Employee {private String name;private String gender;private…

【Spring】Springmvc学习Ⅲ

# Springmvc学习Ⅲ 文章目录 一、图书管理系统1. 功能1.1 登录前端接口前端代码后端接口后端代码 1.2 图书列表展示步骤:图书类代码mock数据代码控制层调用代码服务层代码(存储除数据库中需要存储的数据) 2. 分层控制2.1 三层架构2.2 代码重…

C语言实现简单的日历功能

开篇 本篇文章的题目来源于《编程珠玑》第三章课后习题的第四个问题,也是我会手动实现的本章的最后一个功能。 问题概要 给定月和年,使用字符数组生成该月的日历(含有周几的日历)。 思路分析 为了生成给定年份中某个月的日历&…

【光线重塑技术】小姐姐,美得不可方物——lllyasviel/ic-light

在英伟达自18年宣布光追技术之后,RTX显卡也成了目前Steam游戏的常客。就连 AMD、Intel 和 Apple Silicon 都宣布要在GPU上支持光追算法。这次我要介绍的是huggingface上比较火的relight技术—— ic-light 介绍 IC-Light 是一个操纵图像照明的项目。 IC-Light &qu…

商务分析方法与工具(十):Python的趣味快捷-公司财务数据最炫酷可视化

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊! 喜欢我的博客的话,记得…

【FreeRTOS 快速入门】-- 1、STM32工程移植FreeRTOS

目录 一、新建STM32工程 为了示范完整的移植过程,我们从0开始,新建一个标准的STM32点灯工程。 (本篇以CubeMX作示范,CubeIDE操作近同,可作对比参考) 1、新建工程 选择 芯片型号 新建工程 2、搜索芯片型号…

Pytest自动化测试框架完美结合Allure

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快 简介 Allure Framework是一种灵活的、轻量级、多语言测试报告工…

weblogic [WeakPassword]

一、漏洞描述 开放了wblogic端口,进去发现有任意读取文件漏洞,配合解密工具读出密码,登录后台传入webshell 二、影响版本 当前版本 三、影响组件 weblogic 四、漏洞判断 hello/file.jsp?path/etc/passwd 发现有任意文件下载 五、漏洞…

C++牛客周赛题目分享(2)小红叕战小紫,小红的数组移动,小红的素数合并,小红的子序列求和

目录 ​编辑 1.前言 2.四道题目 1.小红叕战小紫 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思路 2.小红的数组移动 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思路 3.小红的素数合并 1.题目描述 2.输入描述 3.输出描述 4.示例 5.题解与思…

2024年淘宝天猫618超级红包领取口令活动时间是从什么时候开始到几月几号结束?

2024年淘宝天猫618活动,将于2024年5月19日开始,今年618淘宝天猫取消了预售环节。同时,618淘宝天猫也提供了多项优惠活动:超级红包、跨店满减、官方立减、全程价保及草柴APP领优惠券拿购物返利等多重优惠活动。 2024年淘宝天猫618…