You need to enable JavaScript to run this app. 如何在JMeter中模拟用户会话保持、定时请求及响应时间统计场景
优惠活动
大模型
产品
解决方案
定价
更多

如何在JMeter中模拟用户会话保持、定时请求及响应时间统计场景

JMeter 测试场景实现方案

线程组选型

优先使用 JMeter 自带的**标准线程组(Thread Group)**即可完全覆盖需求,无需额外安装插件。如果后续需要更复杂的流量波形调度,也可以替换为插件市场提供的 Ultimate Thread Group。

标准线程组基础配置:

  • 线程数:20,对应20个独立用户
  • Ramp-Up 时间:建议设为1~10秒,保证所有用户短时间内完成登录
  • 勾选「调度器」,持续时间设置为 7200(单位:秒,对应2小时总测试时长)

场景逻辑组件配置

按顺序在线程组下添加以下组件:

  • HTTP Cookie 管理器:默认配置即可,会自动为每个线程独立保存会话Cookie,全程保持登录状态,不需要额外处理会话参数
  • 仅一次控制器(Once Only Controller):把登录请求放在该控制器下,保证每个用户仅执行1次登录操作,不会重复登录
  • 固定定时器:延时设置为 1200000(单位:毫秒,对应20分钟间隔)
  • 目标页面的特定请求:放在定时器之后,即可实现每20分钟发起一次请求的逻辑

单用户最后一次请求响应时间统计

通过轻量代码逻辑即可实现:

  1. 在线程组下添加用户定义变量组件,新增变量last_response_time,初始值设为0
  2. 在目标页面请求下添加JSR223 后置处理器,填入以下代码:
vars.put("last_response_time", prev.getTime().toString())

每次请求完成后会自动用当前请求的响应时间覆盖变量值,测试结束时该变量存储的就是当前用户最后一次请求的响应时间
3. 打开JMeter的 user.properties 配置文件,新增配置 sample_variables=last_response_time,重启JMeter后执行测试,最终输出的jtl结果文件中会自动包含每个线程对应的最后一次响应时间,可直接导出统计

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 16:48:02