JMeter之Json Path Extractor使用(解决json接收上一个请求参数)

最近在使用Jmeter进行接口测试,被一个问题困扰了很久,就是第二个请求如何接收上一个请求响应中的参数,刚开始尝试着用网上普遍说的正则表达式,长了了N多次之,都没有达到我想要的效果,被整的够惨,于是,开始尝试使用第二种方法,就是Jmeter之Json Path Extractor,感觉棒极了,在此记录下

 

除了正则提取器,对于返回结果为 xml 或者 json 内容的请求,JMeter 分别有 XPath Extractor、JSON Path Extractor 等提取器进行提取。

1、下载安装 Json Path Extractor插件,

1.1 插件安装——JMeterPlugins-Extras-1.4.0.zip 解压后,下载后解压以后将lib和lib/ext中的jar包放到安装目录对应位置,重启即可
地址: https://www.jianshu.com/p/56a607fc0d8f 或者 https://jmeter-plugins.org/wiki/JSONPathExtractor/
1.2 尝试上述步骤没有安装成功,于是用JSONPathExtractorExample.jmx (在官网下的一个testplan)这个打开后点击安装,提示安装成功。

成功后,重启JMeter

2、使用方法

 

Variable names : 名称 
JSONPath Expression:JSON表达式 
Match Numbers:匹配哪个,可为空即默认第一个 
Default Value:未取到值的时候默认值

比如某一请求的返回值为:

 

这里因为返回的是json数据,$.data.token,获取token的值

但是有碰到一个坑 
另外一个接口请求返回值为:

 

同样,使用$.data.id去提取id的值时,发现获取到的数据为空 
原来这个responses 的data为数组,故应为 $.data[0].id 提取第1个值

如下:

3、实践成功

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值