JMeter(7) 优化判断返回类型和返回值

之前判断接口类型和返回值用beanshell,可见JMeter(5)-JMeter之BeanShell使用

优化点

  1. 接口测试里面对返回字段的类型验证值验证为基本需求,将方法导成jar文件,导入之后方便每个断言可以调用。
  2. 补充对null类型、Array类型的判断

步骤

  1. 将判断方法打包成jar文件
    java项目打包成jar
    我的jar下载
  2. 导入jmeter项目中


  3. 判断接口返回字段值正确性(EqualsJsonValue类)
    beanshell的调用代码如下
import com.susie.action.equals.EqualsJsonValue;
String standardData = "{'uid':123,'phone':1,'has_password':true,'location':{'province':true,'city':'123'},'cpma':1}";
EqualsJsonValue equalsValue = new EqualsJsonValue();
Failure = !equalsValue.respValueAssertion(standardData, prev.getResponseDataAsString()); //断言结果
FailureMessage = equalsValue.getMessage(); //断言错误信息

运行结果


  1. 判断接口返回字段类型正确性(EqualsJsonType类)
    beanshell的调用代码如下
import com.susie.action.equals.EqualsJsonType;
String standardData = "{'uid':123,'phone':1,'has_password':true,'location':{'province':true,'city':'\u6c55\u5934\u5e02'},'cpma':null}";
EqualsJsonType equalsJson = new EqualsJsonType();
Failure = !equalsJson.respTypeAssertion(standardData, prev.getResponseDataAsString());
FailureMessage = equalsJson.getMessage();
  1. 格式化每个接口的字段断言
    将每个需要检查的字段(期望响应)直接用csv记录,每次比较直接读取进行比对无需一个个断言,非常方便~



    通过CSV Data Set Config读取,在beanshell中比较,调用方式与前面类似,获取标准响应

String standardDataShell = vars.get("standardData").toString();

注意: 读取csv中的json的时要注意json的逗号&双引号
在这里坑了许久,因为csv是以逗号区分不同列的数据,所以,要把json里面的逗号改称分号,双引号改称单引号;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,886评论 18 139
  • 在使用Jmeter进行接口的性能测试时,由于Jmeter 是JAVA应用,对于CPU和内存的消耗比较大,所以,当需...
    燕京博士阅读 4,204评论 0 16
  • 1 Jmeter安装配置 使用Jmeter前首先要安装JDK,配置JDK环境变量。Jmeter不需要安装,下载后...
    茶小汐阅读 2,961评论 0 8
  • 互联网压力性能Badboy.Jmeterhttp://itopic.org/jmeter-http-tcp.htm...
    燕京博士阅读 2,937评论 0 20
  • jmeter内对response值的处理 1. 正则表达式提取器 在取样器上右键,选择正则表达式提取器,如图: 接...
    Null_ice阅读 10,597评论 0 2