在jmeter接口请求中,通常需要根据接口data列表有无返回的数据断言是接口请求成功,如图1,
通常有这么几种方法:
beanshell断言
json断言
响应断言
图1:
失败请求:{"code":0,"msg":"OK","data":[],"traceId":"84798118a104b96b"}
成功请求:
{"code": 0,"data": [ "waybillNumber": "xx122344444","waybillRemark": "运单备注-查件比对" ],"msg": "OK","traceId": "12345"
}
beanshell断言
1.断言返回报文data为空列表[]
import org.json.*; //导入org.json包
String response = prev.getResponseDataAsString(); //获取响应数据
log.info("--------1"+response);
JSONObject responseJson = new JSONObject(response); //转为JSON对象
log.info("--------2"+responseJson);
String rsp_data = responseJson.getString("data");
log.info("-----------3响应rsp_data字段:" + rsp_data);if(!rsp_data.equals("[]")){Failure=false;
}
else{Failure=true;Failuredata="响应data字段非成功";
}
接口请求成
接口请求失败
json 断言
响应断言
根据data列表是否返回字段waybillNumber断言