jmeter---BeanShell断言
为什么使用BeanShell断言:解释性语言,给数据库等有点难度的进行断言!
一、判断状态码是否正确!
测试计划---右击--添加--线程
线程---右击---添加---http请求
http请求---右击--BeanShell断言
http请求---右击---断言---断言结果
http请求:

BeanShell:
if("200".equals(ResponseCode)){//if else判断,"状态码" .引入 equals 判断 ResponseCode 状态码 Failure=false;//Failure 失败,断言通过 }else{//否则 Failure=true;//断言失败并提示错误信息 FailureMessage="预期结果和实际结果不匹配"; }

查看结果树:

二、判断
http:如上:
BeanShell:
import org.json.*;//导报 .引入 *所有
String one=prev.getResponseDataAsString();//获取响应体String类型(one转换为String类型)
JSONObject two=new JSONObject(one);//JSONObject=固定格式,转换为json对象
String msg=two.getString("msg");//获取String类型的msg响应体
if(msg.equals("查询成功")){//引用msg判断响应体,预期结果和实际结果是否正确
Failure=false;//Failure失败,断言通过,
}else{//否则,断言不通过,预期结果和实际结果不符,出现错误提示信息
Failure=true;
FailureMessage="预期结果和实际结构不相符";
}
查看结果树:

浙公网安备 33010602011771号