如何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博客

相关推荐
幺零九零零18 分钟前
压测-JMeter(十二)
jmeter
幺零九零零21 分钟前
压测-JMeter(十三)
jmeter
幺零九零零21 小时前
压测-JMeter(九)
jmeter
幺零九零零1 天前
压测-JMeter(七)
jmeter
幺零九零零1 天前
压测-JMeter学习
学习·jmeter
幺零九零零1 天前
压测-JMeter(六)
jmeter
无名小卒Rain1 天前
Jmeter性能测试-分布式压测配置和执行过程
分布式·jmeter
小钻风33661 天前
软件测试: 从入门到实践(Jmeter的使用)
jmeter
幺零九零零2 天前
压测学习-JMeter
学习·jmeter
幺零九零零2 天前
压测-JMeter
jmeter