背景:
多个接口串起来测试,形成场景化测试。需要把
上一个接口的返回值,当下一个接口的入参数。
准备工作:
需要下载插件,下载地址为:
https://jmeter-plugins.org/wiki/JSONPathExtractor/
下载后解压以后将lib和lib/ext中的jar包放到
安装目录对应位置,重启即可。
Json 格式的数据流中抽取某些特定的数据,数据格式如下:
{
"name":"Simpsons family",
"members":[
{"firstName":"Homer", "lastName":"Simpson"},
{"firstName":"Marge", "lastName":"Simpson"},
{"firstName":"Bart", "lastName":"Simpson"},
{"firstName":"Lisa", "lastName":"Simpson"},
{"firstName":"Maggie", "lastName":"Simpson"}
]
}
正则表达式提取:
"firstName":"(.+?)"
$1$ 来作为模板,而 3 则会返回第三个数据。
JMeter JSON 插件
$.members[2].firstName
在 JMeter 中,只需要从 PostProcessor 菜单中打开 JSON Path Extractor
然后输入变量名与默认值即可,如下所示:
JSONPath 表达式较短并且易于阅读,能够有效提高测试脚本的易维护性
BeanShell Post Processor
标准的 Java 语法来处理 Json 数据,使用方法如下图所示: