JMeter获取json响应报文中数组长度

Posted xiongjiawei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JMeter获取json响应报文中数组长度相关的知识,希望对你有一定的参考价值。

 1 import com.jayway.jsonpath.JsonPath;
 2 import com.jayway.jsonpath.Predicate;
 3 import net.minidev.json.JSONArray;
 4 public class Test {    
 5     public static String readjson(String json, String jsonPath) {        
 6         try
 7         {
 8             Object value = JsonPath.read(json, jsonPath, new Predicate[0]);            
 9             if (value instanceof Integer)
10               {
11                 return value.toString();
12               }else if (value instanceof String)
13               {
14                     return value.toString();
15               }else if (value instanceof Boolean)
16               {
17                     return value.toString();
18               }else if (value instanceof JSONArray)
19               {
20                   JSONArray arr = (JSONArray)value;
21                   if(!arr.isEmpty()){return arr.toJSONString();}                  
22                   return "";
23               }else if (value instanceof LinkedHashMap)
24               {
25                     return value.toString();
26               }else if (value instanceof float)
27               {
28                     return value.toString();
29               }else{
30                   return  value.toString();
31               }
32         }
33         catch(Exception e){
34             return "pathnotfound";
35         }        
36     }    
37 }
38 //------------------------------------------------------------------------------------------------------------------
39 public static void fun(){
40     String response_data=prev.getResponseDataAsString();//prev为JMeter预定义变量
41     String JsonPath="$.data.detail.length()";
42     String result=Test.readjson(response_data,JsonPath);
43     int resultToNum=Integer.parseInt(result);
44     log.info("------------------------详情长度:"+result+"----------------------");
45 }
46 fun();
View Code

 

以上是关于JMeter获取json响应报文中数组长度的主要内容,如果未能解决你的问题,请参考以下文章

Jmeter(三十四)_Beanshell解析并提取json响应

JMeter json路径在响应中声明json或数组

如何从片段中的 JSON 响应中的对象获取数据

jmeter中用json提取器提取响应数据中的多个值

jmeter中数组循环并进行判断

从 Api 登录后,我得到了 json 的响应。现在需要将数组长度显示为我的通知图标的计数。怎么做?