【metersphere平台使用】提取json数据

发布时间 2023-08-07 10:24:27作者: duroheng

  在使用metersphere平台的过程中,遇到较为复杂的后置处理时,无法通过简单的正则或jsonpath提取参数时,考虑通过编写脚本来实现;

  平台支持python2.X和beanshell,首选beanshell;(平台通过docker部署,暂时没有办法安装和导入python3.X的库,导致写不下去)

import org.json.*;
car = vars.get("vehicleId");
String response = prev.getResponseDataAsString();
JSONObject data_obj = new JSONObject(response);
JSONArray apps_array= data_obj.get("data");
for(int i=0;i<apps_array.length();i++){
    JSONObject app_obj= new JSONObject(apps_array.get(i).toString());
    String car_str = app_obj.get("id").toString();
    if(car_str.equals(car)){
    String stat = app_obj.get("stat").toString();
    vars.put("stat", stat);
    break;
}else{
    continue;
}
}