jmeter BeanShell 后置处理器 提取json数组,重新组装后供下一个接口使用

前置条件:在jmeter中使用Json 需要先下载一个json包放到jmeter安装路径下的lib\ext下

我这里用的是json-20140107.jar

我已经放到了百度网盘上,需要的可以自取:

链接:https://pan.baidu.com/s/1rAYOdX22OuzUsq6XNu9H7w
提取码:ncrc

需求:如下截图所示:

 

 请求直接加一个beanShell后置处理器、代码如下:

import  org.json.JSONObject;
import  org.json.JSONArray;
 
//获取请求返回值。此处获取到String类型;
String response_data = prev.getResponseDataAsString();

JSONObject data_obj = new JSONObject(response_data);
JSONArray data_two = data_obj.get("result").getJSONArray("list").getJSONObject(0).getJSONArray("process");


int len=data_two.length();
JSONArray newDataArray=new JSONArray();

for(int i=0;i<len;i++){
  JSONObject temp=new JSONObject();
  JSONObject jsonTmp=data_two.getJSONObject(i);
  temp.put("pcontent",jsonTmp.get("pcontent"));
  temp.put("type","测试");
  newDataArray.put(temp);
  
}

vars.putObject("newAddMenus",newDataArray);  //设置成jmeter变量
log.info("测试啦" + newDataArray.toString());

结果:

 

 

End~

posted @ 2022-10-20 23:42  miracle2  阅读(919)  评论(0编辑  收藏  举报