jmeter处理json数据需要导json.jar包,下载地址:https://mvnrepository.com/
json.jar包放在jmeter的lib/ext下,重启jmeter即可
Beanshell处理器:import org.json.*;
也可以
import org.json.JSONObject;
import org.json.JSONAarry;
主要是处理这两种类型的数据,Json对象和Json数组
eg0:json对象添加,移除元素
import org.json.JSONObject;
import org.json.JSONArray;
import org.apache.commons.lang.StringUtils;
import java.util.ArrayList;
//获取请求返回值。注意此处只能获取到String类型;
String response_data = prev.getResponseDataAsString();
log.info("响应数据:"+response_data);
//将String类型的返回值构造成JSONObject对象,才可使用Java对象的方法对其进行操作
JSONObject data_obj = new JSONObject(response_data);
//StrData为数组;
JSONArray StrData = data_obj.getJSONObject("data").getJSONArray("maintenance_items");
log.info("响应数据:"+StrData);
String item_type_id1 = vars.get("item_type_id_1_g1");
String item_type_id2 = vars.get("item_type_id_2_g1");
String item_type_id3 = vars.get("item_type_id_3_g1");
String employee_id8_2_1 = vars.get("employee_id");
//String employee_id8_2_2 = vars.get("employee_id_8.2_2_g1");
int employee_id_8_2_1=Integer.valueOf(employee_id8_2_1).intValue();
//int employee_id_8_2_2=Integer.valueOf(employee_id8_2_2).intValue();
int i = 0;
for(;i < StrData.length();++i){
//获取 StrData[ i ] 数组对象;
JSONObject jsonTemp = (JSONObject)StrData.getJSONObject(i);
switch(i){
case 0:
jsonTemp.remove("company_id");//移除json元素
jsonTemp.remove("org_id");
jsonTemp.put("key", "0");
jsonTemp.put("maintenance_type_id", item_type_id1);
j