Jmeter模拟用户登录时获取token如何跨线程使用?

一、用户定义的变量

1、添加"用户定义的变量"

2、填写"host、port"

二、setUp线程组

1、添加"setUp线程组"

2、设置循环次数"100"

三、CSV 数据文件设置

1、添加"CSV 数据文件设置"

2、填写信息"用户登录数据.csv、username,password"

四、HTTP请求

1、添加"HTTP请求"

2、填写信息"http、{host}、{port}、POST、/user/login、UTF-8、username、{username}、password、{password}"

五、HTTP信息头管理器

1、在"HTTP请求"下添加"HTTP信息头管理器"

2、填写信息,根据抓包"Request Headers"的信息填写

|------------------|-------------------------------------------------------------------------------------------------------------|
| Referer | http://${host}:{port}/user/login.html | | Accept-Language | zh-CN,zh;q=0.9 | | Origin | http://{host}:${port} |
| X-Requested-With | XMLHttpRequest |
| Content-Type | application/x-www-form-urlencoded;charset=UTF-8 |
| Accept-Encoding | gzip, deflate, br, zstd |
| Accept | application/json,text/javascript,*/*;q=0.01 |
| User-Agent: | Mozilla/5.0 (Windows NT 10.; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537 |

六、JSON断言

1、添加"JSON断言"进行断言

2、填写信息"$.code、200"

七、JSON提取器

1、添加"JSON提取器"提取token(大量数据写入CSV文件,进行读取)

2、填写"login_token、$.data.token",根据抓包数据填写

八、计数器

1、添加"计数器"

2、填写内容"number"

九、BeanShell断言

1、添加"BeanShell断言"

2、打开"函数助手对话框",

3、填写信息"_setProperty、login_token{number}、{login_token}"

4、填写"BeanShell断言"信息

// 获取的token,保存为全局变量,共享给其他线程组

// 创建100个全局变量:login_token_1,login_token_2,login_token_...

{__setProperty(login_token_{number},${login_token},)}

十、调试取样器

1、添加"调试取样器"

2、把"JMeter 属性"设置为"True"

十一、在另一个线程组填写需要压测的详情页

1、添加"线程组",设置循环次数

2、添加"HTTP请求",填写内容"http、{host}、{port}、GET、UTF-8、参数"

3、添加"函数助手"

先生成"${__Random(1,100,)}"

再生成"{__property(login_token_{__Random(1,100,)},,)}"

4、在"HTTP请求"下添加"HTTP Cookie管理器"

填写内容"Authorization、{__property(login_token_{__Random(1,100,)},,)}、${host}、/"

5、在"HTTP请求"下添加"HTTP信息头管理器"

6、添加"调试取样器",设置"JMeter 属性:True"

7.添加"JSON断言-判断code是否为200"

相关推荐
古人诚不我欺3 分钟前
jmeter常用配置元件介绍总结之函数助手
jmeter
川石课堂软件测试3 分钟前
性能测试|docker容器下搭建JMeter+Grafana+Influxdb监控可视化平台
运维·javascript·深度学习·jmeter·docker·容器·grafana
古人诚不我欺5 分钟前
jmeter常用配置元件介绍总结之取样器
jmeter
十叶知秋7 分钟前
【jmeter】jmeter的线程组功能的详细介绍
数据库·jmeter·性能测试
我非夏日9 分钟前
JMeter基础篇
jmeter
茶馆大橘9 小时前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
土小帽软件测试15 小时前
jmeter基础01-2_环境准备-Mac系统安装jdk
java·测试工具·jmeter·macos·软件测试学习
土小帽软件测试20 小时前
jmeter基础03_汉化jmeter界面
测试工具·jmeter·软件测试学习
紫晓宁21 小时前
jmeter结合ansible分布式压测--3压测执行
分布式·jmeter·ansible
黑色叉腰丶大魔王1 天前
《通过 Jmeter 压测存储过程详解》
jmeter