性能测试中设计性能场景

性能测试场景其实就是功能测试中的测试用例,需要对项目设计不同的测试场景来检验系统的性能。

性能场景大体分为两类一、 通用类场景

 此类场景是指不局限于某种业务或者项目,任何项目都有可能要测试的场景,主要包含以下几种

1、 基准测试场景

此场景的目的是为系统建立一个性能基线,使用 1 个并发运行 3-5 分钟,记录 tps 和响应时间数据。

 

2、 单交易/单接口测试场景

此场景单独测试每一个接口,测试出每个接口的最优 tps 和响应时间,判断有没有性能问题,性能是否满足需求。如果性能不好,需要优化之后再进行回归测试。

 

3、 混合测试场景

如果需要测试系统中的多个业务/接口,那么在单交易场景结束后,按照业务比例,对多个接口同时进行压测。记录整体和各个接口的 tps 和响应时间,判断有没有性能问题。因为有的接口单独测试没问题,但是接口之间可能相互影响。且真实生产环境中,本身就是一种混合场景。

 

4、 稳定性测试场景

 稳定性场景主要目的为测试系统在压力下长时间运行是否能保持稳定,待前面几个场景测试结束后,选择一种比混合场景压力低一些的压力,长时间运行场景(至少 8 小时),检查系统在长时间运行下,是否会出现内存泄漏、tps 下降、tps 抖动等情况。

 

5、 异常测试场景(非必须,根据实际情况来定)

此场景的目的是检测在一定的压力下,当系统环境出现一些异常的时候,系统是否还能正常运行。比如说最常见的网络异常,当网络出现延迟、丢包、甚至某些组件之间断网, 系统会表现出什么现象呢?会不会产生一些业务异常数据等等。

 

6、 高可用性测试场景(非必须,根据实际情况来定)

高可用性测试指的是在集群模式下,整个集群在一定的压力下,如果某些节点/组件宕机,那么整个集群能否继续稳定运行?宕机组件的业务和功能能否平滑过渡到集群中的其他节点?系统整体性能会不会下降?当宕机节点恢复后,是否还可以继续处理业务? 等等。

这样场景下需要系统架构有高可用性的设计和相关的功能组件。

 

 二、 业务类场景

此类场景根据不同项目的业务,设计一些符合用户行为和业务特点的场景。

 

          比如现在要测试下单接口的性能,那么这个时候测试账号内的购物车中要添加多少种类商品呢?

用户的购物车中有一种商品和 10 种商品下单,后台接口代码的运行效率肯定是不一样的。一般的购物车里都有商品种类的上限,假如说是 50,那么我们根据业务可以设计 3 种场景1、 购物车中只有 1 种商品(预期性能最好,真实情况下出现概率较高)

2、 购物车中包含 10 种商品(预期性能居中,真实情况下出现概率居中)

3、 购物车中包含 50 种商品(预期性能最差,真实情况下出现概率低)

  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在进行JMeter购物车混合场景压力测试时,可以按照以下步骤进行: 1. 需求分析:确定测试对象为购物车功能,考虑数据量和并发量较大的情况,如添加商品到购物车、修改购物车、删除购物车等操作。性能指标要求在8小时内完成500万次操作。 2. 测试计划:明确测试目标、测试人员安排和测试进度安排。选择适合的压力机配置和数量,确保能够满足测试需求。考虑可能的风险。 3. 测试方案:选择JMeter作为测试工具,结合LoadRunner进行压力测试。搭建测试环境,包括数据库、服务器和架构设计,并尽量与生产环境保持一致。制定测试策略,包括单一场景测试、混合场景测试和多业务测试。 4. 用例设计设计购物车混合场景的测试用例,包括添加商品到购物车、修改购物车、删除购物车等操作,并设置断言来判断请求响应是否符合预期。这个步骤是非常重要的,可以用来隔离问题域,确保功能正确的前提下进行压力测试。 5. 测试执行:运行JMeter测试脚本,模拟多个用户同时执行购物车混合场景操作。观察或输出参数,如数据吞吐量、响应时间、资源占有率等指标,以评估系统在压力下的性能表现。 6. 定位分析问题:根据测试结果进行问题定位和分析,可以分析前端、后端(包括代码、软件和硬件)以及网络方面的问题。 综上所述,进行JMeter购物车混合场景压力测试的步骤包括需求分析、测试计划、测试方案、用例设计、测试执行和定位分析问题。通过这些步骤,可以对系统的性能进行评估和优化。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [JMETER性能测试工具](https://blog.csdn.net/m0_51400323/article/details/121414792)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [测试面试重点题型](https://blog.csdn.net/jntmlk/article/details/107358956)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值