如何编写一份高质量测试用例

简介: 如何编写一份高质量测试用例

大家好,我是阿娟,一位从业 7 年的软件测试程序媛

测试用例编写是软件测试中非常重要的一个环节,今天给大家分享如何编写一份高质量测试用例


一、需求拆解


一)整体了解需求


仔细阅读需求文档,对整体需求进行的充分理解,例如遇到业务相关联的需求,需要查询相关文档或是询问相关同学,尽全力做到不遗漏。


二)识别功能点


将整体的需求拆分为具体的功能点,例如注册,除了正常的注册流程,还要考虑不同注册的方式,手机号注册、邮箱注册、微信注册等等。


三)确定边界和约束


确定每个子功能的边界和约束条件,包括输入、输出、数据格式等,例如邮箱注册,支持的邮箱类型,密码输入的格式等等。


四)结合业务


很多测试场景是要和业务相结合的,例如登录,常见的一般有手机号登录、邮箱登录。但是还有很多需求方要求授权码登录,一些绑定在主帐号上的公共帐号只能通过这种方式进行登录等。


二、测试用例的编写


一)组成要素


1、测试用例名称:用于描述测试用例的目的或功能点,例如登录、注册等。

2、测试前提:测试用例执行的前提条件,例如登录功能的验证前提网络正常等。

3、测试步骤:测试用例的操作流程。包括所需的输入和操作等,例如输入正确的帐号和密码,点击登录。

4、测试数据:测试用例执行的输入数据,包括输入值、边界条件等。

5、预期结果:测试用例的预期执行结果,例如点击登录按钮,预期结果是登录成功,进入到app首页等。

6、实际结果:测试用例的实际执行结果,

7、优先级:标识测试用例的优先级或重要性级别

8、测试状态:标识测试用例验证通过或失败

9、备注:记录其他和用例执行相关的数据信息


二)呈现方式


1、Excel:包含如上所述的要素,用例编写更详细一些,每一条用例验证一个功能点

2、XMind:如果业务场景不是很复杂,可以尝试使用XMind编写,结构比较清晰

3、其他工具

使用开源或是自研的工具,编写方法是一样的,优点是项目或是团队各成员之间用例可以实现共享,并且能看到具体的执行记录


三)编写测试用例的常用方法


1、等价类划分法


一般是指一个输入域的集合,在这个集合中每个输入条件都是有效的,一般分为有效等价类和无效等价类。

举例:计算1~10之间两个整数的和。

有效等价类:1~10,无效等价类:<1和>10、非整数、其他字符


2、边界值法


输入值的边界情况,包括最小值、最大值和临界值。一般是对等价类划分的一个补充。

举例:计算1~10之间两个整数的和。

产生了1和10这两个边界值(闭区间,1和10都有效)


还有一些场景是开区间的,例如(1,10],[1,10)等,根据实际情况进行调整


3、场景法


事件触发形成了场景,而同一事件的不同触发条件或是顺序或处理结果形成事件流,最后要形成闭环


例如登录流程:

基础流:输入正确的账户和密码登录成功

基础流+备用流1:账户需要二次验证,输入正确的账户和密码,进入二次验证界面,验证成功,登录成功

基础流+备用流2:输入错误的账户和密码,提示账户或密码错误等。


4、因果图法(判定表法)


输入条件比较多的情况下,所有的输入条件的排列组合

举例:注册流程,a. 输入手机号或者电子邮箱作为账户名 b. 输入正确验证码  

两项都验证成功,填写账户信息

如果一项验证不正确(输入手机号或电子邮箱格式错误),提示账户错误

验证码输入错误,提示验证码错误

❌表示不输入

根据整理好的表数据,编写测试用例


5、错误推测法


基于测试人员的测试经验,猜测系统中可能存在的错误和缺陷,并编写相应的测试用例来验证这些猜测。


6、正交表法


举例:一个样式控件

字体包含宋体和楷体

颜色包含黑色和红色

样式基于正文和标题

找出控件个数(因素数)以及每个控件的取值个数(水平数)

根据正交表查询链接(http://support.sas.com/techsup/technote/ts723_Designs.txt),选择一个水平为:2,因素为:3的正交排列表,如下图所示:



将每个控件及其取值进行编号,并填入正交表中,如下图所示:



根据整理好的正交表,编写测试用例,每一行对应一条用例


三、其他


一)独立性和可重复性


每个测试用例应该是相互独立的,不依赖于其他用例的执行结果。用例应该是可重复执行的,以便在需要时重复验证结果。


二)可验证性


每个测试用例的预期结果应该是可验证的,能够判断测试是否通过或失败。


三)可复用性


很多功能组件都是复用的或是同一个功能展示在不同入口,所以有些用例是可以复用的,通过修改或扩展,减少冗余的测试用例编写。


四)及时更新和维护


随着项目的发展或是需求的变化,及时更新和维护测试用例,以确保其与系统的最新版本功能保持一致。


以上就是今天的分享,谢谢你的阅读呀~


相关文章
|
开发工具 git
IDEA 错误运行’Application’: !invalid format: `命令行过长
刚刚在Git下拉的项目,启动的时候就报错了。记录一下
3377 0
IDEA 错误运行’Application’: !invalid format: `命令行过长
|
1月前
|
人工智能 监控 API
AI智能体的开发流程
AI智能体开发已升级为“架构设计+意图工程”,核心在于自主规划、工具调用与记忆能力。全流程分五阶段:需求建模→四层架构(感知/推理/记忆/行动)→低代码或编程实现→提示词与反馈驱动调试→带护栏的部署监控。2026趋势是多智能体协同分工。
|
2月前
|
自然语言处理 机器人 物联网
展厅机器人技术深度解析与主流商用产品选型指南
随着数字化转型,展厅机器人正从迎宾工具升级为集导览、讲解、交互于一体的服务中枢。融合语义导航、大模型问答、多模态交互与IoT控制,实现智能避障、分钟级知识部署、主动服务与环境联动。猎户星空、优必选、科大讯飞、新松等品牌各具优势,满足多样化场景需求,推动公共服务智能化升级。(238字)
|
2月前
|
机器学习/深度学习 存储 人工智能
大模型基础概念术语解释
大语言模型(LLM)基于Transformer架构,通过海量文本训练,具备强大语言理解与生成能力。其核心组件包括注意力机制、位置编码、嵌入层等,支持万亿级参数规模,展现出涌现与泛化特性。Token为基本处理单元,MoE架构提升效率。模型能力随规模扩大显著跃升,推动AI语言处理发展。
|
3月前
|
安全 网络安全 数据安全/隐私保护
泛域名SSL证书
泛域SSL证书(即通配符证书)可一键保护主域名及无限二级子域名,如*.example.com,简化管理、降低成本。适用于多子域名场景,部署便捷,安全可靠,是企业网站加密优选方案。
231 4
|
人工智能 自然语言处理 机器人
对话阿里云 CIO 蒋林泉:AI 时代,企业如何做好智能化系统建设?
10 月 18 日, InfoQ《C 位面对面》栏目邀请到阿里云 CIO 及 aliyun.com 负责人蒋林泉(花名:雁杨),就 AI 时代企业 CIO 的角色转变、企业智能化转型路径、AI 落地实践与人才培养等主题展开了讨论。
24288 69
对话阿里云 CIO 蒋林泉:AI 时代,企业如何做好智能化系统建设?
|
测试技术 数据安全/隐私保护
软件测试的艺术:如何高效地编写测试用例
【9月更文挑战第2天】在软件开发的海洋中,测试用例是导航灯塔,指引着质量保障的航向。本文将带你航行于测试用例编写的技巧之海,从理解需求到设计思路,再到实际执行,我们将一起探索如何高效而精准地构建测试用例,确保软件的稳健与可靠。
387 1
|
存储 人工智能 数据处理
阿里云CTO周靖人:全面投入升级AI大基建
9月19日,在2024杭州云栖大会上,阿里云CTO周靖人表示,阿里云正在围绕AI时代,树立一个AI基础设施的新标准,全面升级从服务器到计算、存储、网络、数据处理、模型训练和推理平台的技术架构体系,让数据中心成为一台超级计算机,为每个AI和应用提供高性能、高效的算力服务。
23668 15
|
安全 测试技术
不会写测试用例咋办?牢记这5点,你也能写出高逼格案例
不会写测试用例咋办?牢记这5点,你也能写出高逼格案例
532 1
|
监控 网络协议 算法
在Linux中,如何进行网络性能调优?
在Linux中,如何进行网络性能调优?