JMeter中的读取json数据---JSON Extractor插件

JSONPath Expression:JSON表达式 

Match Numbers:匹配哪个,可为空即默认第一个 
Default Value:未取到值的时候默认值

如下json:

 

 1 { 
 2 
 3   "statusCode":200,
 4 
 5   "data":{"userId":"4a2cbe616eb74f0d99190af072c8dea6",
 6 
 7   "token":"37e7a9e198186f5a443e50e6138a5bd20bd"
 8 
 9   }
10 
11 }
  • 这里因为返回的是json数据:
    1 $.data.token  获取token的值

    如图所示:

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

 1 {
 2 
 3   "statusCode":200,
 4 
 5   "data":[{"code":"407949",
 6 
 7   "id":"aa477ad2085d492a99b877d14343d68d",
 8 
 9   "name":"90一中4545"}]
10 
11 }
  • 同样,使用$.data.id去提取id的值时,发现获取到的数据为空 
  • 原来这个responses 的data为数组,故应为
    1  $.data[0].id        提取第1个值 

    如图所示:

 如下json:

 1 {
 2    "name":"Simpsons family",
 3    "members":[
 4                 {"firstName":"Homer", "lastName":"Simpson"},
 5                 {"firstName":"Marge", "lastName":"Simpson"},
 6                 {"firstName":"Bart", "lastName":"Simpson"},
 7                 {"firstName":"Lisa", "lastName":"Simpson"},
 8                 {"firstName":"Maggie", "lastName":"Simpson"}
 9             ]
10 }


JSONPath提取代码:提取第三列firstName =Bart 的值

$.members[2].firstName

 

posted @ 2018-08-24 23:57  RChow  阅读(3002)  评论(0编辑  收藏  举报