为什么使用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="预期结果和实际结构不相符"; }
查看结果树: