jmeter后置处理器之JSON Extractor

jmeter后置处理器之JSON Extractor

JSON Extractor后置处理器主要用在返回格式为json的HTTP请求中,用来获取返回的json中的某个值。并保存成变量供后面的请求进行调用或断言等。在了解其使用前自然需要先了解jsonpath语法以便更加方便灵活的获取响应的json值,为后续关联使用。

【jsonpath语法】

 注意

  • JsonPath的索引从0开始计数
  • JsonPath中字符串使用单引号表示

【JSON Extractor配置说明】

名称:json后置表达式的名称,标识作用,建议使用有意义的名字

Variable names:保存的变量名,后面使用${Variable names}引用

JSON Path  expressions:上一步中调试通过的json path表达式

Match Numbers:匹配数字(0代表随机,1代表第一个,-1代表所有)

Default Values:找不到时默认值,一般设置为NOT FOUND

Compute concatenation var(suffix_ALL):是否统计所有,即将匹配到的所有值保存,名为“变量名_ALL”,使用场景需要获取的值有多个,后面需要对这一组数据进行操作

【JSON Extractor使用操作演示】

1:在需要获取响应的接口处添加JSON Extractor后置处理器

 2:获取期望值,这个根据jsonpath语法灵活运用

3:在需要引用的trad_serial_no地方引用即可----引用方式:${trad_serial_no}

4:在步骤2之前可以在查看结果树json path expression找到需要的json值,进行测试

 5:获取的值有多个且需要对这些值做处理

var channel_serial_no_ALL=vars.get("channel_serial_no_ALL");
log.info(channel_serial_no_ALL);#获取的是个字符串
var channel_serial_no_ALL_list=channel_serial_no_ALL.split(",");#字符串拆分成数组
var maxInNumbers = Math.max.apply(Math, channel_serial_no_ALL_list);
vars.put("a",maxInNumbers);

参考:https://www.cnblogs.com/yanximin/p/10984006.html

原文地址:https://www.cnblogs.com/qiaoli0726/p/13854373.html