Jmeter 用 groovy 解析 json

发表时间 ·

在 Jmeter 里,用 Groovy 解析 json 格式的响应内容是很方便的,既能灵活提取指定字段,又能做进一步的复杂逻辑处理。本文介绍这种方法。

脚本配置

最简单的配置是在一次请求采样(Sampler)之后,添加后处理器(Post Processor):

Test Plan
  └─ Thread Group
      └─ HTTP Request
           └─ JSR223 PostProcessor

接下来看如何在 JSR233 里处理HTTP收到的 JSON 数据

代码片段

JsonSlurper

确认 JSR223 Post Processor 的语言类型选择的是 Groovy 后,在文本框中填入下列代码, 使用 JsonSlurper 解析 JSON 数据:

import groovy.json.JsonSlurper

def slurper = new JsonSlurper();
def resp = slurper.parseText(prev.getResponseDataAsString());

这样得到的 resp 就是解析后的 json 对象了,可以用点号(Dot Notation)或者方括号(Bracket Notation)方式访问对象内容,比如:

import groovy.json.JsonSlurper

def slurper = new JsonSlurper();
def resp = slurper.parseText(prev.getResponseDataAsString());

OUT.println(resp.foo.bar);
OUT.println(resp["foo"]["bar"]);

方括号(Bracket Notation)方法尤其适合字段名中包含特殊符号,或者字段名由变量表示的情形。


相关文章   欢迎到 留言板 写下你的看法。
  本页面内容采用 署名协议 CC-BY 授权。欢迎转载,请保留原文链接