想实现的功能:当响应文本中包含"status":0则断言通过,否则断言不通过,打印响应结果
之前是直接使用断言中的响应断言,当断言不通过时无法知道是什么错误,failure message: Test failed: text expected to contain /"status":0/
使用BeanShell断言,可以自定义断言失败时的打印结果,如下图打印响应结果:
prev.getResponseDataAsString() #获取当前请求的响应结果
Failure、FailureMessage 是Beanshell断言特有的参数,用于指定断言失败。
代码如下:
prev.setDataEncoding("utf-8"); //解决响应乱码问题
String json = prev.getResponseDataAsString();
if(json.contains("\"status\":0")){
Failure=false;
}else{
Failure=true;
FailureMessage=json;
}