一: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使用
四:提取结果如下
标签:JSONArray,text,json,lineCodes,列表,JSON,BeanShell,line,Jmeter From: https://www.cnblogs.com/wu1378/p/17028040.html