jmeter-json提取器提取数据

背景
现在很多接口的登录是返回一个json数据,token值在返回的json里面,在jmeter里面也可以直接提取json里面的值。
上一个接口返回的token作为下个接口的入参。
1.案例场景:
我现在有一个登陆接口A,登陆成功后返回一个token值。有一个重置支付密码接口B,但是接口B必须要先登录后传登录的token才能访问,
A接口登录接口文档基本信息:
访问地址:http://192.168.153.132:8080/app/mobile/api/user/login
请求类型:POST
请求头部:application/json
请求参数:{“mobile”:“13257008322”,
“gqid”:“4000055”,
“password”:“123456”}

2.A接口的请求和返回的报文信息如下:
在这里插入图片描述
在这里插入图片描述
3.B:接口信息如下
在这里插入图片描述
4.登录请求
先在jmeter里面添加http请求,填登录接口的参数
在这里插入图片描述
5.HTTP信息头管理器添加post请求类型:Content-Type: application/json
在这里插入图片描述
6.运行之后查看结果树,可以看到正确的返回我们想要的token值
在这里插入图片描述
如何提取想要的token值呢?
7.json提取器
添加后置处理器-json提取器
在这里插入图片描述
响应数据,返回的是json格式

{"code":0,"msg":"成功调用",
"data":{"id":160150,
"username":"guiyin",
"sex":1,"age":20,"mobile":"1357008322",
"email":"13257008311@163.com",
"gqid":"4000017","money":0.0,"pmoney":100.0,
"createtime":1611318524715,"lasttime":1611318524715,
"token":"ze+Ao6yj7XuffImRLBpypQ/i0a4QWHPLfHGJs0jD8BikuDVTcVLx40TG7FQjiAq+xRU/jxaEwo/fQbjJJq9BrA==","identity":"9f89565c1ab59b10"}}

分析A接口登录后返回的token的位置
json提取的公式有两种,一种是绝对路径,一种是相对路径,都可以提取成功。
a)绝对路径
$.data.token
b) 相对路径
$..token
8.返回的结果,通过B接口resetpaypwd;请求成功可以断定提取成功;
请求参数,调用json提取后的值jtoken在这里插入图片描述
9. B接口响应数据,
在这里插入图片描述
10. 也可以通过 调试取样器查看:
在这里插入图片描述
11. JSON提取器参数说明:

Names of created variables 参数名称
JSON Path expressions 提取表达式
Match No.(0 for Random) 匹配规则,-1所有,0随机,1第一个
Compute concatenation va 如果有匹配到多个值,选择此项,会将全部值保存到_ALL,并使用逗号分割每个值,注意Match No. (0 for Random)需要为-1才有效,不然只能匹配到一个值了
Default Values 没提取到就给默认值

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值