使用JMeter如何实现并发压测下的只登录一次
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,性能测试过程中经常有需要对案例进行大并发压测,但是只需要登录一次即可,jmeter自带了仅一次控制器,但此控制器只是针对单线程才有意义,多线程下,设置多少线程数还是会执行多少次1000并发用户下,系统
千家信息网最后更新 2025年02月02日使用JMeter如何实现并发压测下的只登录一次
- 性能测试过程中经常有需要对案例进行大并发压测,但是只需要登录一次即可,jmeter自带了仅一次控制器,但此控制器只是针对单线程才有意义,多线程下,设置多少线程数还是会执行多少次
- 1000并发用户下,系统还是会执行1000次登录,有10次登录失败,就会影响实际压测案例的结果,本文就介绍如何使用全局变量实现真正意义上的只执行一次登录
一、请求分析
- 本次需要对系统的一个查询操作做性能测试,首先使用谷歌浏览器登录系统,按F12进入调试页面,然后访问查询页面,下图为查询接口地址
- 下图为该接口的信息头,由图可知,需要先登录获取Cookie,并且在查询请求信息头申明该Cookie即可实现查询操作
二、脚本开发
- 本次需要先开发好登录脚本,由下图可知,MOD_AUTH_CAS变量会在登录1请求中的子请求(重定向)返回
- 只需要在该请求下添加一个正则表达式提取器即可,如下图所示
- MOD_AUTH_CAS变量提取成功,我们只需要在该请求后面使用beanshell申明该变量为全局变量即可,这样其它线程也能调用该变量
- 在查询线程组下,申明信息头,并且定义cookie字段,值使用MOD_AUTH_CAS=${__P(Th_MOD_AUTH_CAS,)}进行调用,如下图所示
三、多线程验证
- 首先设置线程组为2线程2循环,看是否能正常执行
- 设置测试计划,测试计划勾选独立运行每个线程组,并且把登录线程组放置在最前面,这样系统就会先执行登录,在执行其它线程组
- 执行脚本,如下图所示,系统只登录了一次,正常进行了4次查询,4次查询是2线程执行了2次循环
- 本文介绍了登录使用Cookie鉴权如何实现一次登录,多并发下执行压测,如果系统调用了token,规则一样,只需要把token全局化即可实现
如果文章对你有帮助,欢迎关注本人公众号,公众号与本平台文章同步,方便大家查阅,本人会持续推出与测试有关的文章,与大家分享测试技术,每一篇原创文章都是用心编写,杜绝抄袭复制
QQ技术交流群:加群请输入验证信息 51cto
微信二维码关注公众号:
关注之后,回复资源下载,即可获取本人共享的各种资源下载地址
线程
登录
查询
变量
系统
测试
信息
文章
次登
下图
全局
公众
脚本
地址
性能
技术
接口
控制器
案例
资源
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
公司软件开发资质证书
大学新生网络安全培训新闻稿
最小服务器
济南市浪潮服务器代理哪家好
软件开发公司支付的认证费用
2019年教育信息化和网络安全
异常行为分析 数据库
交大数据库管理与维护作业
昌平软件开发者
蚌埠咖啡点餐软件开发多少钱
计算机网络安全受损的危害
网络安全 东软 怎么样
华为软件开发工程师招聘专业
安装ftp服务器图片
携手应对网络安全问题
连接网络显示代理服务器不正确
软件开发项目质保金规定
电信与互联网行业网络安全年会
oracle数据库分区
计算机网络技术软考
对网络安全的宣传教育工作
怎么装oracle数据库
福建施工oa管控软件开发平台
数据库原理与应用51852
郴州网络安全宣传
两会网络安全数据安全
国内便宜服务器
微信软件开发客服
吴白参加网络安全大赛
查出数据库的字段去除换行符