使用JMeter如何实现并发压测下的只登录一次

  • 性能测试过程中经常有需要对案例进行大并发压测,但是只需要登录一次即可,jmeter自带了仅一次控制器,但此控制器只是针对单线程才有意义,多线程下,设置多少线程数还是会执行多少次
  • 1000并发用户下,系统还是会执行1000次登录,有10次登录失败,就会影响实际压测案例的结果,本文就介绍如何使用全局变量实现真正意义上的只执行一次登录

一、请求分析

1. 本次需要对系统的一个查询操作做性能测试,首先使用谷歌浏览器登录系统,按F12进入调试页面,然后访问查询页面,下图为查询接口地址
在这里插入图片描述
2. 下图为该接口的信息头,由图可知,需要先登录获取Cookie,并且在查询请求信息头申明该Cookie即可实现查询操作
在这里插入图片描述
二、脚本开发

1. 本次需要先开发好登录脚本,由下图可知,MOD_AUTH_CAS变量会在登录1请求中的子请求(重定向)返回
在这里插入图片描述
2. 只需要在该请求下添加一个正则表达式提取器即可,如下图所示
在这里插入图片描述
3. MOD_AUTH_CAS变量提取成功,我们只需要在该请求后面使用beanshell申明该变量为全局变量即可,这样其它线程也能调用该变量,格式如下 ,其中Th_MOD_AUTH_CAS是设置为全局变量的变量名,格式如下:
${__setProperty(Th_MOD_AUTH_CAS,${MOD_AUTH_CAS},)}
在这里插入图片描述
5. 在查询线程组下,申明信息头,并且定义cookie字段,值使用MOD_AUTH_CAS=${__P(Th_MOD_AUTH_CAS,)}进行调用,如下图所示
在这里插入图片描述
三、多线程验证

1. 首先设置线程组为2线程2循环,看是否能正常执行
在这里插入图片描述
2. 设置测试计划,测试计划勾选独立运行每个线程组,并且把登录线程组放置在最前面,这样系统就会先执行登录,在执行其它线程组
在这里插入图片描述
3. 执行脚本,如下图所示,系统只登录了一次,正常进行了4次查询,4次查询是2线程执行了2次循环
在这里插入图片描述
在这里插入图片描述
4. 本文介绍了登录使用Cookie鉴权如何实现一次登录,多并发下执行压测,如果系统调用了token,规则一样,只需要把token全局化即可实现


如果文章对你有帮助,欢迎关注本人公众号,公众号与本平台文章同步,方便大家查阅,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制


QQ技术交流群:加群请输入验证信息 CSDN
              在这里插入图片描述


微信二维码关注公众号:

在这里插入图片描述


关注之后,回复资源下载,即可获取本人共享的各种资源下载地址
在这里插入图片描述

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JMeter 是一款功能强大的开源性能测试工具,可以用于模拟高并发压力测试。以下是 JMeter并发压测的一般步骤: 1. 创建测试计划:在 JMeter 中创建一个测试计划,该计划将包含所有需要进行压力测试的请求。 2. 添加线程组:在测试计划中添加一个线程组,用于模拟并发用户。可以设置线程数、启动时间、循环次数等参数。 3. 添加请求:在线程组中添加需要进行压力测试的请求。例如,可以添加 HTTP 请求来模拟用户访问网站的行为。 4. 配置请求参数:对每个请求配置相应的参数,如 URL、请求方法、请求头、请求体等。 5. 添加断言:为了验证响应是否符合预期,可以添加断言来检查响应内容、响应时间等。 6. 配置定时器:通过添加定时器来模拟用户请求的间隔时间,以控制并发量。 7. 配置监听器:添加监听器来收集测试结果,如查看响应时间、错误率、吞吐量等。 8. 运行测试:保存测试计划并运行测试。JMeter 将模拟并发用户发送请求,收集性能指标,并生成报告。 9. 分析结果:使用 JMeter 提供的报告功能,对测试结果进行分析和解读,以评估应用程序的性能和稳定性。 请注意,在进行高并发压测时,需要考虑目标系统的性能和承受能力,合理设置线程数和循环次数,避免对目标系统造成过大的负担。同时,建议在测试之前先进行预热,模拟逐渐增加的用户负载,以更真实地模拟实际情况。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值