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

如何在JMeter中从数组格式响应读取值并赋值给变量

在JMeter中从数组格式的API响应提取值并赋值给变量

你的API响应是包含单个对象的JSON数组:[{"data1":763,"data2":"jhgf"}],以下是两种常用的提取方法:

方法一:使用JSON Extractor(推荐)

这是JMeter内置的专门处理JSON响应的元件,操作简单:

  • 右键点击目标请求 -> 添加 -> 后置处理器 -> JSON Extractor
  • 配置参数:
    • 引用名称:输入要生成的变量名,比如data1_value或data2_value
    • JSON Path表达式:
      • 提取data1的值:$[0].data1($表示根节点,[0]取数组第一个元素,.data1指定字段)
      • 提取data2的值:$[0].data2
    • 匹配数字:填1(表示只提取第一个匹配结果)
    • 默认值:可填NOT_FOUND(提取失败时变量会被设为该值,避免空变量报错)
  • 配置完成后,后续请求直接用${data1_value}或${data2_value}即可引用变量。

方法二:使用JSR223 PostProcessor(灵活自定义)

如果需要更复杂的逻辑处理,可用Groovy脚本提取:

  • 右键点击目标请求 -> 添加 -> 后置处理器 -> JSR223 PostProcessor
  • 在脚本框中输入以下代码:
import groovy.json.JsonSlurper

// 获取响应内容
def responseBody = prev.getResponseDataAsString()
// 解析JSON数组
def jsonArray = new JsonSlurper().parseText(responseBody)

// 提取值并赋值给变量
vars.put("data1_value", jsonArray[0].data1.toString())
vars.put("data2_value", jsonArray[0].data2)
  • 后续请求同样通过${data1_value}、${data2_value}引用变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 02:41:56