在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断言