jmeter--json 提取器

前戏

一般我们的项目都是http的,测接口也是http,所以发送http请求是必须要会的,下面就以一个自己写的登录接口为例。

首先我们创建一个线程组,在创建一个HTTP信息头管理器,用来存放请求头,在创建一个HTTP请求,在创建一个查看结果树,用来查看我们的结果。

因为传的参数是json格式的,所以要在HTTP信息头管理器里注明Content-Type,如下

注:HTTP信息头管理器如果放在上面所有请求都会带上,如果是放在HTTP请求下面,则只有当前的HTTP请求会携带请求头

执行查看结果

这样一个最简单的HTTP接口就请求成功了

JSON Extractor提取参数

上面我们已经发送了一个登录请求,并且成功了,返回了token,现在我们还有一个获取课程的接口,需要携带token,我们可以把登录返回的token写到获取课程的接口里,但是当我们重新登录之后,token就发生了变化,如果还使用之前的token。接口就会返回token错误,如下

所以token不能写死,每次都需要从登录接口里获取token值。

因为接口返回的是JSON格式,jmeter提供了json提取器来快速帮我们获取对应的值,在正式提取之前,我们可以使用json提取器来测试我们的表达式

操作步骤如下

上面我们使用正确的表达式提取到了token,我们就可以把这个表达式放到JSON Extractor里了。

在登录接口下新增JSON Extractor,JSON Extractor在Post Processors中

界面参数如下

经过上面的一系列操作之后,我们就把我们的token提取出来存到了变量login_token里面,接下来我们要在获取课程接口里面使用这个token。

JMETER中引用变量的方法 ${变量名}

运行查看结果

Debug Sampler

上面我们使用json表达式测试的时候能保证我们的表达式是正确的,但有时候如果接口失败的话,那我们提取的值也就是错误的了,这时候如果一个接口一个接口的排查下去的话,会很浪费我们的时间,我们可以添加一个Debug Sampler,可以查看我们的所有变量

界面如下

运行jmeter查看debug sanpler

Debug Sampler一般放在最后

posted @   邹邹很busy。  阅读(670)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示

目录导航