jmeter之json提取器
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jmeter之json提取器相关的知识,希望对你有一定的参考价值。
参考技术A 接口测试中,经常会遇到,某个请求的参数需要从上一个接口的返回数据中提取,那么这时候我们就需要用到j提取器了。最常见的是json提取器,下面就来介绍下json提取器的常见使用方法。Apply to: 应用范围。一般使用默认的即可
Names of created variables :变量名称,提供给其它控件引用。这个自定义,多个参数用分号隔开。匹配到单个值可直接引用,如$id;若是匹配到多个值,需要使用第n个值时则带上下坐标,如第3个为 $id_3
JSON Path expression: 从json响应中提取内容的表达式,其中$代表根元素,.id表示从根元素往下找到id,匹配所有值用 [*],如$.[*].id,匹配第n个值用 $.[n].id
Match No.(0 for Random): 0代表随机选择一个,-1代表提取所有值,n表示提取匹配的第n个值,如“1”表示提取匹配到的第1个值
Compute concatenation var(suffix_ALL): 创建一个$foo_ALL包含所有提取值的串联的变量,即将提取的值组成一个list返回
Default Values: 缺省值,匹配不到值时使用该值,也可以写error
业务场景: 登录后提取accessToken(即下图中的id),当做后面的请求的参数,返回和提取方式如下
注:因为这里只返回了一个id,所以表达式使用$.id,下面的Match No.(0 for Random) 为空即可
业务场景: 匹配返回体中所有的“id”,0代表随机提取一个,需要指定提取第n个,将0改为n即可
这里指定提取还有另一种写法:$.[n].id
业务场景: 匹配返回体中所有的“tpye”和“id”,添加一个Debug PostProcessor,可查看提取的结果。
使用: 使用id和type的第n个值,$element_n 、$tpye_n,使用返回值数量:$elementId_matchNr
jmeter之 json提取器
1. json提取器
json extractor后置处理器用在返回格式为json的HTTP请求中,用来获取返回的json中的某个值。并保存成变量供后面的请求进行调用或断言等。
2、右键点击“线程组” -> “添加” -> “后置处理器” -> “JSON Extractor”
3、正则表达式提取面板介绍:
1)names of created variables :接收值的变量名,多个变量时用分号分隔
2)json path: json path表达式,也是用分号分隔
3)match no:0随机;n取第几个匹配值;-1匹配所有,后续引用用 变量名_N 取第N个值。
4)default values: 缺省值,匹配不到值的时候取该值
3、提取(单个值)登录后获取的token,作为请求头参数,用于其它接口请求使用
PS:后期补充提取多个值案例。
以上是关于jmeter之json提取器的主要内容,如果未能解决你的问题,请参考以下文章