jmeter后置处理器JSON Extractor

Jmeter后置处理器JSON Path Extractor 功能    --获取json响应数据的值示例片段:{    "message":"ok",    "nu":"350757819118",    "ischeck":"1",    "condition":"F00",    "com":"huitongkuaidi",    "status&quot 阅读详情

JMeter处理responses 的json

对于请求1返回的结果,处理以后作为请求2的参数,JMeter提供了正则表达式提取器

如下:

这里写图片描述

这样也可以通过正则表达式获取responses的某个值 :  或者 "id":"(.*?)"

但是对于大部分请求返回的结果,都是json,有一个更方便使用的插件:JSON Extractor
不过得首先下载插件 https://jmeter-plugins.org/wiki/JSONPathExtractor/

下载后解压以后将lib和lib/ext中的jar包放到安装目录对应位置,重启即可

简单介绍一下该插件怎么使用

这里写图片描述

该插件为:

这里写图片描述

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

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

{"statusCode":200,"data":{"userId":"4a2cbe616eb74f0d99190af072c8dea6","token":"37e7a9e198186f5a443e50e6138a5bd20bd"}}
   
  • 1
  • 1

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

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

{"statusCode":200,"data":[{"code":"407949","id":"aa477ad2085d492a99b877d14343d68d","name":"90一中4545"}]}
   
  • 1
  • 1

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

如下:

这里写图片描述

备注: JSON中 data 是一个对象数组, data[0] 代表取的是第一个数组的对象,data[*] 代表取全部对象。

.id 取的是id的值 .name取的是name的值

例如,返回值为:

{
:   "status":0,
:   "data":
:   {
:   :   "resources":
:   :   [
:   :   :   {
:   :   :   :   "id":1,
:   :   :   :   "name":"广告位"
:   :   :   },
:   :   :   {
:   :   :   :   "id":2,
:   :   :   :   "name":"优惠券"
:   :   :   },
:   :   :   {
:   :   :   :   "id":3,
:   :   :   :   "name":"实物赞助"
:   :   :   }
:   :   ],
:   :   "trades":
:   :   [
:   :   :   {
:   :   :   :   "id":546,
:   :   :   :   "tradeName":"IT/互联网"
:   :   :   },
:   :   :   {
:   :   :   :   "id":547,
:   :   :   :   "tradeName":"游戏/动漫"
:   :   :   },
:   :   ],

这里要分别取 resources 和 trades 的所有id值,表达式可以写:$.data.trades[*].id 。(代表
trades下所有子集中的id

jmeter后置处理器JSON Extractor取多个变量值 1、需要获取响应数据的请求右键添加-后置处理器-JSON Extractor 2、如果要获取json响应数据多个值时,设置的Variable names 与JSON Path expressions及Default Values的数量一定要一致; 如json体如下: { "msg": "success", "code": "200", "data": 阅读详情

相关推荐

jmeter (四):后置处理器 Json extractor

在用jmeter 提取请求返回的值,除了用到前面提到的正则表达式提取,我们还可以用到后置处理器 Json extractor 。 当json数据返回值为{"firstName": "Jiezai"},正则表达式为"firstName": "(.+?)",如果:(冒号左右边有空格时),其实也是json数据,然后正则表达式也需要跟着加,但是不管冒号左右边有没有空格,JSON Path Extract...

yh_ginny的博客 780

json提取器(JSON Extractor)的使用,提取接口返回值给下个接口使用(关联)

1、json提取器官方解释: 2、接口返回的数据是json格式,在要提取返回数据的接口中按如下步骤添加“json提取器”; 3、在接口返回数据中,要提取【pubKey】的值: (1)json提取器填写介绍: 注意:如果同时提取多个:则Match No. (0 for Random)和Default Values一定要填;如果匹配的结果只有一个,则Match No.填“1”;另外Default Values可随便填“0”,不填的话会报错,匹配不到数据; (2)可以把json返回数据在..

jarthong的博客 1万+

JMeter(三):后置处理器[JSON Extractor]

JSON ExtractorJMeter中的一个后置处理器,用于解析HTTP响应中的JSON数据,并提取所需的信息。它基于JSONPath表达式来定位JSON数据中的特定字段,并将提取到的值存储为JMeter变量,方便后续使用。JSON ExtractorJMeter中一个非常实用的后置处理器,它能够帮助我们从HTTP响应的JSON数据中提取所需的信息,并将其存储为JMeter变量。通过合理配置JSONPath表达式和使用提取到的变量,我们可以更加灵活和高效地处理JSON数据,并进行后续的性能测试工作。

我先测了 758

JMeter 后置处理器JSON提取器

JSON后置处理器(PostProcessor)允许使用JSON Path 语法从JSON格式的响应中提取数据。类似正则表达式提取器,必须位于HTTP采样器、或者其它可以返回JSON数据的采样器下,作为子结点。正在上传…重新上传取消JsonPath表达式可以使用点标记或者括号标记。

Free355的博客 3308

【P16】JMeter JSON提取器(JSON Extractor

JSON提取器(JSON Extractor)参数及使用教程详解

qq_45138120的博客 1万+

JMeter-JSON提取器(JSON Extractor

当取样器返回的数据是JSON格式时,可以用JSONPath提取所需要的值,通过JSON提取器(JSON Extractor)来实现。

murongzhuzhu的博客 6054

Jmeterjson提取器

Jmeterjson提取器 一、json提取器设置多个变量获取多个数据 1、jsonPath表达式:$.data.result[*].data.tradeTitle $表示根元素,然后一级级属性往下去找,先找到data,再往下子节点找到result,[*]表示该节点下有多个子节点。然后找到data,再找到tradeTitle 2、添加:后置处理器——json提取器 3、json提取器配置 JSON提取器说明: **Apply to:**应用范围 **Names of created variabl

彼岸•仰望的博客 4万+

6.Jmeter-后置处理器Json extractor

后置处理器-json extractor概念:顾名思义,提取json响应的数据中提取数据;步骤:sampler-后置处理器-jsonextractor1.提取单个参数1.Variable name :自定义参数名,引用的时候${} 格式2.Json path expression:json表达式,根据上面的json,表达式为:$.errorCode3.下面的接口参数中引用的时候直接使用${Vari...

WANGtesting的专栏 1万+

Jmeter 后置处理器--jp@gc - JSON/YAML Path Extractor & JSON Extractor

后置处理器--jp@gc - JSON/YAML Path Extractor 1.需要下载插件,地址: 解压后把对应jar包放置对应的lib和lib/ext目录下,重启Jmeter; 2.在需要提取的请求添加一个:jp@gc - JSON/YAML Path Extractor 2.填写Json path txtractor 如果不知道结果是否正确,可...

weixin_34032621的博客 1800

Jmeter-后置处理器Json extractor

后置处理器-json extractor 概念:顾名思义,提取json响应的数据中提取数据; 步骤:sampler-后置处理器-jsonextractor 1.提取单个参数 1.Variable name :自定义参数名,引用的时候${}格式 2.Json path expression:json表达式,根据上面的json,表达式为: $.errorCode 3.下面...

ddu32445的博客 305

Jmeter后置处理器JSON Extractor使用

JSON Extractor的目的:用来提取json响应信息。 参数 1.Names of created variables :自定义参数名,可以在beanshell中引用 2.Json path expression:json表达式,能取到你的响应节点对应数据。(注意格式) 3.Match No.(0 for Random):0随机,1匹配所有,n表示匹配第几个(具体使用没有深究) 4.Def...

JR19951012的博客 327

Jmeter后置处理器JSON Extractor

https://www.cnblogs.com/loveapple/p/9852456.html

warmlizhan的专栏 183

Jmeter后置处理器JSON Extractor

Jmeter后置处理器JSON Extractor

晴天的博客 1670

jmeterjson提取器详解

示例:$.key.key2[:-1],表示获取除了最后一个元素以外的所有值,也就是从最后一个开始数,不要最后一个,其余都要。示例:$.key.key1[0:2],表示提取$.key.key1[0],$.key.key1[1] 这两个值。示例2:$.key.key1[1:3],表示提取$.key.key1[1],$.key.key1[2] 这两个值。示例2:$.key.key2[-2:],表示获取最后两个元素的值,如果是-1,则获取最后1个元素。

hzq20032003的博客 3073

JSON 提取器:从文本中提取 JSON 内容的实用工具

在现代软件开发中,JSON(JavaScript Object Notation)是一种广泛使用的数据交换格式。无论是前端与后端的通信,还是配置文件的存储,JSON 都扮演着重要的角色。有时,我们需要从文本中提取 JSON 格式的数据,而这可能并不像看上去那么简单。今天,我将分享一个简单而有效的 Java 工具类,它可以帮助我们从文本中提取 JSON 格式的内容。

訾博(ZiBo)的博客 3518

jmeter-关联(json提取器)

提取器的作用,可以理解为将前面接口应答信息提取出来,以便后面接口使用,比如缴费接口,需要先调用查询接口,查询得到欠费多少,再按欠费的金额进行缴费。想要查看json提取器提取到的变量的值,可以添加调试取样器查看取值结果,路径:线程-添加-取样器-Debug sampler。Default Values 设置为erro,jsonpath故意写成不存在的路径,运行结果如下图。启用compute concatenation var复选框,运行结果如下图。5. match no项设置为1,结果如下图。

hunanying的博客 1000

Jmeter(5.3)-JSON Extractor入门-提取jsonjson数组中的值

1.打开JSON Extractor 线程组/某个请求-右键-Add-Post Processors-JSON Extractor 2.JSON Extractor 常用可配置项 3.提取JSON 在请求A下增加JSON Extractor 3.1配置参数 Names of created variables配置需要获取的参数名,比如下图定义的pici定义的一个参数${pici},则在Names of created variables配置pici,如果存在多个参数,用逗号分隔,经测试,支持中文参数

秋不溜秋的博客 8786

JMETER后置处理器JSON提取器

JSON后置处理器(PostProcessor)允许使用JSON Path 语法从JSON格式的响应中提取数据。类似正则表达式提取器,必须位于HTTP采样器、或者其它可以返回JSON数据的采样器下,作为子结点。JsonPath表达式可以使用点标记或者括号标记操作符操作符描述$需要查找的根元素。所有JSON PATH表达式都以这个开头@正被某个过滤谓词处理的当前节点(The current node being processed by a filter predicate)*通配符。

m0_37449634的博客 3073
上一篇: jmeter-使用步长插件和思考时间设置负载场景
下一篇: Linux环境下jira数据迁移
tester_356
博客等级 码龄9年 14粉丝 12原创
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值