如何编写性能测试用例

🍅 视频学习:文末有免费的配套视频可观看

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

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

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

单场景的定义

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

单场景压测的目的

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

单场景的来源

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

项目架构及服务器清单

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

图片

图片

单场景用例

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

图片

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

图片

 部分实际结果 

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

补充:jmeter脚本

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

图片

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

图片

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。

字节大佬,一周讲完,自动化测试项目实战,这套教程是怎么称霸B站的?【2024最新版】

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编写接口测试用例时,可以按照以下步骤进行: 1. 确定测试目标:明确要测试的接口功能和预期结果。 2. 准备测试数据:根据测试目标准备合适的测试数据,包括输入参数和预期输出。 3. 设计测试用例:根据接口的不同功能和参数,设计多个测试用例,覆盖不同的情况和边界条件。确保测试用例的完整性和独立性。 4. 编写测试代码:选择适合的编程语言和测试框架,编写测试代码来调用接口并验证结果。可以使用工具或库来发送 HTTP 请求,并解析返回的数据。 5. 执行测试用例:运行编写的测试代码,执行测试用例。确保每个测试用例都能独立执行,并记录测试结果。 6. 断言验证:在测试代码中添加断言来验证实际结果与预期结果是否一致。可以使用断言库来简化断言的编写。 7. 输出报告:生成测试报告,包括测试用例的执行结果、通过率、失败原因等信息,以便后续分析和修复问题。 此外,还可以考虑以下几点: - 参数化:使用不同的参数值进行多组测试,增加覆盖范围。 - 异常处理:模拟异常情况,检查接口对异常输入的处理是否正确。 - 性能测试:测试接口的性能指标,如响应时间、并发请求等。 总之,编写接口测试用例需要充分理解接口的功能和预期结果,设计全面的测试用例,并使用合适的工具和框架来执行和验证。希望以上信息能对您有所帮助!如果还有其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值