如何Jmeter中书写正确的jsonpath表达式

在jmeter中涉及到json的地方就必然要写jsonpath的表达式,英文表达为:"JSON Path expressions",可以理解为某个字段在响应的json报文中的路径,他通用的格式是:.键的名称,用一个英文的""表示json外面的大括号,然后用一个点加上键的名字表示路径,具体的可以看下面的情况分析:

响应中遇到不同的json类型如何书写jsonpath表达式

第一种:响应结果全部都是键值对格式,也就是:{key1:value1,key2:value2,key3:value3,key4:value4,key5:value5}

这种情况如果要提取value1,那么表达式就是:$.key1

第二种:响应结果是嵌套的键值对格式,也就是有好多个括号的情况:

{key1:{key2:{key3:value3,key4:value4},key5:value5}}

这种情况如果要提取value3,那么表达式就是:$.key1.key2.key3

第三种:响应结果既有嵌套又有数组,也就是既有大括号又有中括号的情况:

{key1:[{key2:value1},{key2:value2},{key2:value3}]}

这种情况如果要提取key2对应的所有值value1、value2、value3,那么表达式就是:$.key1[*].key3

其中:

[*] 表示取出数组中的所有值

[0] 表示取出数组中的第一个值

[1] 表示取出数组中的第二个值,其他的以此类推

如何验证所写的jsonpath的正确性

在查看结果树中选择"JSON Path Tester",输入表达式然后点击test,如果有返回结果证明书写正确,如果没有那就是写错了。

其他参考资料

这个也只是我个人的一个学习笔记,如果大家还是看不懂的话可以评论区留言或者参考一下其他大佬写的:

jmeter从接口返回值中提取数据的方法------后置处理器JSON Extractor_jmeter------提取返回值里的部分信息-CSDN博客

JSONPath 表达式与用法_jsonpath表达式-CSDN博客

相关推荐
明月与玄武14 小时前
JMeter 实现 MQTT 协议压力测试 !
jmeter·压力测试·jmeter实现 mqtt协议
文小大14 小时前
五、jmeter脚本参数化
jmeter
程序员的世界你不懂19 小时前
Jmeter(四) - 如何在jmeter中创建网络测试计划
jmeter
1.01^10002 天前
[5-02-04].第01节:Jmeter环境搭建:
jmeter
太阳之神aboluo2 天前
压测软件-Jmeter
java·运维·jmeter
三千花灯2 天前
jmeter之导出接口
jmeter
文人sec2 天前
性能测试-jmeter实战2
jmeter
会又不会2 天前
JMeter-SSE响应数据自动化2.0
jmeter·自动化
程序媛_2 天前
【JMeter】后置处理器 - 提取器
jmeter
程序员三藏2 天前
如何使用Jmeter进行压力测试?
自动化测试·软件测试·python·测试工具·jmeter·测试用例·压力测试