news 2026/4/17 21:24:06

如何编写性能测试用例?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何编写性能测试用例?

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

写测试用例,是测试绕不开的工作内容,不管是功能、自动化,还是性能。先来回顾一下功能测试用例主要包含的要素:测试用例编号、测试标题、所属模块、测试需求项编号、案例状态、预置条件、优先级、测试输入、操作步骤、预期输出、实际结果、案例设计者、设计日期、案例性质等。性能测试用例(有的称为场景用例)的设计,有别于功能测试用例、自动化测试用例的设计,毕竟,考虑的点不一样。对于性能测试来说,一般要考虑这4种场景:单场景、混合场景、稳定性场景、异常场景。

下面,结合笔者实际工作,分享下单场景的用例是如何设计的。

单场景的定义

有的称为接口基准(Benchmark)、或者单交易的容量,总之,这个不是真实的业务原型(可以简单理解为不同业务的使用情况)。

单场景压测的目的

既然单场景不是真实的业务原型,为什么不直接做混合场景的压测呢?其实,做单场景压测的目的是测试出这个单业务的最大tps,方便判断瓶颈,比如,业务部门给的混合场景的tps(假设这个tps值是合理有效的),根据业务原型比例计算后,业务A的目标tps都比你单场景的最大tps还要大,那是不是应该让开发提前优化了?如果在混合场景压测中,发现业务A的tps已经到达或者接近其单场景最大tps,但是混合场景还没有达标,那说明瓶颈在业务A。

单场景的来源

有人可能要问,单场景从哪里来?如果你们业务部门或者其它部门能给,那最好,如果不能给,你作为性能测试人员,要引导相关人员给,总之,我觉得这个不能性能测试单独定,否则后期出问题可能你独自背锅哦,要尽最大努力保证不出问题,哪怕出问题,也要一起背锅。单场景是来自于业务原型,但是不是每个业务接口都需要做压测,所以,我们这里说的业务原型,是混合场景的业务原型,混合场景里面,每个业务接口都需要做单场景压测。至于业务原型如何获取,这是一个大话题,本次分享暂不讨论,如果想交流,欢迎微信留言。

项目架构及服务器清单

我们用个简单的架构来举例:nginx + tomcat*2 + mysql

单场景用例

除了基于压测工具的设计(假设用的压测工具是jmeter),还包含监控的设计、预期结果、实际结果

部分预期结果(根据项目实际情况写)

部分实际结果

如果你的架构很复杂,写重点即可,无需把过多的时间耗费在文档上,况且后期你也可以慢慢完善。

补充:jmeter脚本

连续阶梯加压,看线程、tps、rt的趋势

另外,混合场景、稳定性场景、异常场景的用例设计

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:20:52

Date类与Calendar类——Java日期时间处理的双核心

在Java编程中,日期与时间的处理是高频需求,从记录操作日志到实现定时任务,都离不开对时间的精准把控,而Date类和Calendar类则是Java中处理日期时间的两大核心工具,二者各司其职,共同构建了Java早期的日期时…

作者头像 李华
网站建设 2026/4/16 10:21:31

Redis 性能调优

Redis 性能调优的核心目标是降低延迟、提升吞吐量、保证稳定性,需从操作系统、Redis 基础配置、内存管理、持久化、命令 / 数据结构、集群 / 网络 等多维度系统性优化。以下是分模块的实操调优方案:一、操作系统层面调优(基础保障&#xff09…

作者头像 李华
网站建设 2026/4/16 10:16:34

AI核心知识57——大语言模型之MoE(简洁且通俗易懂版)

MoE 是 Mixture of Experts(混合专家模型)的缩写。它是目前解决大模型 “既要变得超级聪明(参数量大),又要跑得快(推理成本低)” 这个矛盾的核心架构技术。目前最顶尖的模型,如 GPT-…

作者头像 李华
网站建设 2026/4/15 21:44:11

S32K3启动RAM数据初始化

想要搞清这个问题,需要重点研究startup_cm.s文件。启动时,RAM数据的初始化主要包括两个过程:RAM区域初始化(数据清0);有初始值的变量需要从flash中加载到ram中。RAM区域初始化这一段代码由汇编实现&#xf…

作者头像 李华
网站建设 2026/4/16 10:17:54

【工业互联网Agent性能跃迁指南】:3步打造高精度实时分析系统

第一章:工业互联网Agent数据分析的核心价值在工业互联网体系中,Agent作为部署于设备端的数据采集与执行单元,承担着连接物理世界与数字系统的桥梁作用。通过对Agent收集的运行状态、环境参数、操作日志等多维数据进行深度分析,企业…

作者头像 李华
网站建设 2026/4/16 10:17:12

基于单片机的医院病房无线呼叫系统

一、系统整体架构设计 基于单片机的医院病房无线呼叫系统采用“终端-中继-主机”三层架构,实现病房与护士站的实时通信。终端层为分布在各病房的呼叫分机,每个分机配备单片机(STC89C52)、按键、LED指示灯与无线发射模块&#xff0…

作者头像 李华