You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JMeter实现基于Token的多用户并发登录测试?

如何用JMeter实现多用户并发登录测试(含Token生成流程)

完全可以用JMeter实现这个多用户并发登录场景,下面是具体的实现步骤:

1. 准备多用户测试数据

创建一个CSV文件(比如users.csv),每行存储一组用户的ID和密码,格式如下:

userid1,password1
userid2,password2
userid3,password3

后续用这个文件给每个并发线程分配独立的用户凭证。

2. 添加线程组模拟并发用户

在JMeter中添加线程组:

  • 设置线程数为你需要的并发用户数量
  • 根据需求配置Ramp-Up Period(比如10秒,让JMeter在10秒内逐步启动所有线程,避免瞬间冲击服务器)
  • 循环次数根据测试需求设置,比如设置为1表示每个用户只执行一次登录流程

3. 加载用户凭证(CSV Data Set Config)

在线程组下添加CSV Data Set Config:

  • 填写CSV文件的路径
  • 设置变量名称为userid和password(对应CSV里的两列)
  • 根据测试需求选择是否循环读取数据(比如勾选Recycle on EOF?表示用完数据后重新循环,Stop thread on EOF?表示用完数据后停止线程)

4. 调用Token生成接口并提取Token

在线程组下添加HTTP Request,配置Token生成接口:

  • 请求URL填写:https://testtoken.generatorservice.com/api/${userid}?password=${password}(用变量替换固定的用户ID和密码)
  • 根据接口要求设置请求方法(GET/POST等)和请求头(比如Content-Type: application/json)

接下来添加JSON提取器(如果接口返回JSON格式的响应)来提取Token:

  • 引用名称设为token(后续调用登录接口时用这个变量)
  • JSON Path表达式填写$.token(假设接口返回的JSON结构是{"token": "your_token_value"})
  • 如果接口返回的是纯文本Token,改用正则表达式提取器,正则表达式写(.+)即可

5. 调用登录接口获取用户信息

添加另一个HTTP Request,配置登录接口:

  • 填写登录接口的URL和请求方法
  • 根据接口要求带上Token:比如在请求头里添加Authorization: Bearer ${token},或者在请求参数里传入token=${token}
  • 同样设置对应的请求头,确保接口能正确识别Token

6. 添加监听器查看测试结果

添加查看结果树来查看每个请求的响应详情,添加聚合报告来统计并发场景下的性能指标(比如响应时间、错误率等)

额外注意事项

  • 确保Token的提取逻辑正确,可以先单独运行1个线程验证流程是否正常,再扩大并发数
  • 如果接口有频率限制,需要在线程组下添加定时器(比如固定定时器)来控制请求间隔
  • 测试前确认服务器能承受对应的并发压力,避免影响线上服务

内容的提问来源于stack exchange,提问作者Shajith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 17:09:59