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

JMeter中如何等待获取processStatus=Published的指定响应

JMeter文件上传后等待processStatus变为Published的实现方案

前置配置修正

先确认你的JSON Extractor配置存在一处细节问题:原JSON路径$.A.B.processStatus因B是数组类型,会返回数组而非单个字符串值,需调整为:

$.A.B[0].processStatus

同时确保JSON Extractor的引用名称设为processStatus(后续脚本将基于此变量名取值),匹配数字设为1(取第一个匹配项)。

While Controller的Groovy循环脚本

在While Controller的「条件」输入框中,使用以下Groovy脚本实现循环轮询直到状态为Published,同时添加超时避免无限循环:

// 定义超时阈值(单位:毫秒,示例为5分钟)
def timeout = 300000
// 记录循环开始时间
def startTime = System.currentTimeMillis()

// 获取JSON Extractor提取的最新状态值
def currentStatus = vars.get("processStatus")

// 循环条件:状态未达标 且 未超时
return currentStatus != "Published" && (System.currentTimeMillis() - startTime) < timeout

关键注意事项

  • 在While Controller内部必须添加HTTP请求,用于轮询接口获取最新状态,每次请求后JSON Extractor会自动更新processStatus变量值
  • 可在HTTP请求前添加Constant Timer,设置2000-5000ms的等待间隔,避免高频请求压垮服务器
  • 若你在JSON Extractor中使用了其他变量名,需将脚本中的processStatus替换为实际变量名

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 00:32:21