Jmeter BeanShell处理JSON响应

一:Json响应如下:

二:添加beanshell后置处理器

 

 

三:Json处理代码如下:

import com.alibaba.fastjson.*;

public static String line_code_list(String json_text)
{
   JSONObject object = JSONObject.parseObject(json_text);                                                 //定义json对象
   JSONObject data = object.getJSONObject("data");                                                           //获取json主节点名称
   JSONArray lineList = data.getJSONArray("lineList");                                                         //获取主节点下列表
   JSONArray lineCodes = new JSONArray();                                                                       //创建一个列表对象
   for(int i=0;i<lineList.size();i++){                                                                                       //遍历lineList
       JSONArray lines = lineList.getJSONObject(i).getJSONArray("lines");                         //定义一个主线列表,循环获取lines
       for(int j=0;j<lines.size();j++){                                                                                     //遍历lineList下的lines列表
           JSONObject line = lines.getJSONObject(j);
           lineCodes.add(line.getString("value"));                                                                //将主线线路id添加到lineCodes列表
           if(line.containsKey("branch_line")){                                                                     //如果主线下包含支线
               JSONArray branch_line = line.getJSONArray("branch_line");                        //定义一个支线列表
               for(int k=0;k<branch_line.size();k++){
                   lineCodes.add(branch_line.getJSONObject(k).getString("value"));
               }
           }
       }
   }
   return lineCodes.toJSONString();
}

String json_text=prev.getResponseDataAsString();                                                //获取响应内容
vars.put("line_code",line_code_list(json_text));                                                     //传入json列表共jmeter使用

 

四:提取结果如下

 

posted @   wu1378  阅读(656)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示