无法从JMeter中的JSON响应中提取变量

时间:2018-11-09 09:31:58

标签: json jmeter jmeter-plugins

我在JMeter中收到JSON格式的回复。

{"data1":{"file":"myfile","contentType":"text/xml"},"data2":{"file":"myfile","contentType":"text/xml"}}

我使用jp@gc JSON Path Extractor插件来获取file字段的值。每个实例一个。

表达式1:$.data1.file

表达式2:$.data2.file

我使用Debug Sampler检查目标变量的值。当我在其中进行检查时,这些都不具有价值,但是当我在vars.get("destvar1")中使用JSR223 Sampler时,第一个具有价值。我也尝试了内置的JSON Post Processor,但是会产生相同的输出。

1 个答案:

答案 0 :(得分:1)

  1. 添加JSON Extractor作为请求的子代,该请求返回上述JSON。 JSON Extractor遵循JMeter Scoping Rules,因此您需要确保仅将其应用于“有趣的”采样器
  2. 配置如下:

    • 已创建变量的名称:destvar1;destvar2
    • JSON路径表达式:$.data1.file;$.data2.file
    • 默认值:notfound;notfound

      enter image description here

  3. 就是这样,您应该使用Debug SamplerView Results Tree侦听器组合来查看值

    enter image description here