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