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

JMeter分布式测试问题:登录重复执行+Test Fragment文件未找到

分布式测试配置问题

配置步骤

  • 部署1台Master机器和2台Slave机器,已成功建立连接
  • 在Master机器上复制了脚本及Test Data文件夹
  • 在2台Slave机器上仅复制了Test Data文件夹
  • 从Master机器执行分布式测试,场景设置为1线程,登录模块设置为1线程且仅执行一次,预期是登录仅执行一次,场景以2线程分别在Slave1和Slave2运行

遇到的问题

  • 问题1:尽管登录模块设置为1线程且仅执行一次,实际登录执行了两次
  • 问题2:两台Slave机器均提示Login Test Fragment.jmx not found

相关截图

场景设置截图
登录模块配置截图
Slave1报错截图
Slave2报错截图


问题2的原因及解决办法

Slave机器找不到Login Test Fragment.jmx,是因为仅在Master节点存放了脚本文件,Slave节点缺少这个测试片段依赖。分布式测试时,所有Slave节点都需要能访问到场景依赖的全部脚本文件。
解决方式:把Login Test Fragment.jmx复制到两台Slave机器的JMeter脚本目录;或者在Master端启用远程测试的文件自动分发功能,让Master同步依赖脚本到所有Slave节点。

问题1的原因及解决办法

登录执行两次是因为分布式测试中,每个Slave节点会独立执行你设置的场景结构。你设置的“登录仅执行一次”是单节点层面的配置,2个Slave节点各自执行一次,所以总共两次。
要实现全局仅执行一次登录,需调整方案:

  1. 先在Master单独执行登录脚本,将登录后的会话信息(如Cookie、Token)存入共享存储(比如共享文件、Redis)
  2. 让两台Slave在执行主场景前,从共享存储读取会话信息,直接复用该会话开展后续操作
  3. 或者将登录模块从分布式场景中剥离,单独执行一次后,再让Slave基于登录后的上下文运行主业务场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 11:47:35