一、 json path 语法
- 在使用json提取器之前,我们先用在线网站学习一下。网站地址:链接
1、提取lastName的值可以写$.lastName
- $: 代表整个json,根节点
- . : 点代表下个节点
- $.lastName 意思就是,找到根节点下的lastName的值
2、提取根节点下的 address,下的streetAddress
- 根节点下的 address是一个对象,在json中以{}括起来的叫对象,city是address对象的子节点,所以表达式写为:$.address.streetAddress
3、提取列表中的值
- phoneNumbers的值是一个列表,列表使用[] 括起来,列表中可以存放多个对象。
- 提取phoneNumbers列表中的第一个对象的type的值,语法:$.phoneNumbers[0].type 取列表里面的值,要在后面加上[],里面填写索引值,第一个对象 对应索引0, 第二个对应索引1,以此类推。
二、JMeter中使用JSON
- 注:以下演示接口是自己写的,如需要学习请在网上找返回响应数据为json的接口。
1、请求接口部分已省略,从添加结果树开始。在响应结果中 使用json path Tester查看提取信息是否正确,city的值为Nara
2、添加json提取器
3、填写提取器参数
Names of created variables:保存的变量名,后面使用${name}引用
JSON Path expressions:调试通过的json path表达式
Match No.(0 for Random):匹配数字(0代表随机,1代表第一个,-1代表所有)
Compute concatenation var(suffix_ALL):是否统计所有,即将匹配到的所有值保存,名为“变量名_ALL”
Default Values:找不到时默认值
4、添加调试取样器
5、在结果树中查看