Jmeter,关联之JSON提取器【提取满足特定条件的变量值】
1、JSON提取器-提取列表中的随机值$.data[*].id2、JSON提取器-提取满足特定条件的变量值$.data[?(@.tabName=="设备")].id3)JSON提取器-多层提取$.data.contractList.[?(@.modifyBtn=='2')].contractId4、JSON提取器-提取多个变量值$.data.contractList.[?(@.modifyBtn=
·
1、JSON提取器- 提取列表中的任一值
$.data[*].id
2、JSON提取器- 提取满足特定条件的变量值
$.data[?(@.tabName=="设备")].id
----表达式中,匹配的变量不要加引号“”,值需要加引号“”,具体需要看接口的相应数据格式.
3、JSON提取器- 多层提取
$.data.contractList.[?(@.modifyBtn=='2')].contractId
4、JSON提取器- 提取多个变量值
$.data.contractList.[?(@.modifyBtn=='2')].["contractId","contractNo"]
-----不过建议还是分别提取比较好。
引申:Jmeter中,JSON提取器各字段解释
1)字段结果Apply to应用范围,选默认的 main sample only 就行了
2)Names of created variables:接收提取值的变量名
多个变量用 ; 分隔
调用的时候,使用:${var}
3)JSON Path expression:json path 表达式,用来提取某个值
多个表达式用 ; 分隔
4)Match No.(0 for Random)
取第几个值,多个值用 ; 分隔
0:随机,默认
-1:所有
1(N):第一(N)个值
非必传,默认为0,随机取
5)Compute concatenation var(suffix_ALL)
如果匹配到多个值,则将它们都连接起来,不同值之间用 , 分隔
变量会自动命名为 <variable name>_ALL
6)Default Values
缺省值,匹配不到值的时候取该值,可写error
多个值用 ; 分隔
非必传
注意:
如果match_to,输入的为-1,随机匹配的话,调用该变量的时候,要加_1.具体可添加debug sampler检查自己需要的变量值.
点击阅读全文
更多推荐
所有评论(0)