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"

相关推荐
文人sec5 小时前
性能测试-jmeter9-逻辑控制器、定时器压力并发
测试工具·jmeter·性能优化·模块测试
CesareCheung2 天前
JMeter分布式压力测试
分布式·jmeter·压力测试
测试界清流2 天前
jmeter使用技巧
jmeter
春时似衿里2 天前
jmeter配置数据库连接步骤
数据库·jmeter
新知图书2 天前
JMeter的安装部署
jmeter
程序员杰哥2 天前
什么是Jmeter? Jmeter工作原理是什么?
自动化测试·软件测试·python·测试工具·jmeter·职场和发展·测试用例
乐神嘎嘎嘎2 天前
Jmeter测试
jmeter
卓码软件测评2 天前
第三方软件测试机构【性能测试工具用LoadRunner还是JMeter?】
java·功能测试·测试工具·jmeter·性能优化
BatyTao3 天前
Jmeter执行数据库操作
数据库·jmeter
二宝哥3 天前
性能测试工具Jmeter之java.net.BindException: Address already in use
jmeter