zoukankan      html  css  js  c++  java
  • 12. Jmeter-断言

    jmeter-断言介绍与使用

    性能测试中较少用到断言。断言会增加脚本执行时间,但是接口测试中断言是必备的。什么是断言?其实就是功能测试中常说的预期结果和实际结果是否相等。

    • 响应断言
    • JSON Assertion
    • Size Assertion
    • JSR223 Assertion
    • XPath Assertion
    • Compare Assertion
    • 断言持续时间
    • HTML Assertion
    • MD5Hex断言
    • SMIME Assertion
    • XML断言
    • XML Schema Assertion
    • BeanShell断言

    响应断言

    见图知意。接口测试中较少用到。

    JSON Assertion

    也算是见图知意吧。这里需要注意一下 Additionally assert value: 等于特定值 Match as regular expression:符合正则表达式

    Size Assertion

    见图知意。。。

    JSR223 Assertion

    JSR223 Assertion可以选择多种语言,如下图所示:

    笔者常用的是beanshell和JS。这里我们以beanshell举例。 JSR223 Assertion实例

    import org.json.*;
    
    //获取上一个请求的返回值
    String response = prev.getResponseDataAsString();
    //将返回值转换为json
    JSONObject responseJson = new JSONObject(response);
    //获取responseMessage
    String status = responseJson.get("status").toString();
    String message = responseJson.getString("message");
    
    
    
    if(!status.equals("0")) {
        Failure = true; 
        FailureMessage = "status错误";
    }else{
        FailureMessage = "status正确";
        }
    
    if(!message.equals("username or password error")) {
        Failure = true; 
        FailureMessage = "message错误";
    }else{
        FailureMessage = "message错误";
        }
    

    运行结果

    XPath Assertion

    可以参考11. Jmeter-后置处理器二中的XPath Extractor

    Compare Assertion

    嗯。。用到正则了。暂时跳过。

    断言持续时间

    这个就比较好理解了。断言取样器运行测试消耗掉的时间,比如我们的持续时间填写10,实际时间如果是20s,那么就会断言失败。

    HTML Assertion

    MD5Hex断言

    对返回的MD5进行断言,直接填入即可。

    SMIME Assertion

    可以参考SMIME Assertion,用的不多。

    XML断言

    用来验证响应数据是正确的XML格式,不常用。

    XML Schema Assertion

    BeanShell断言

    可以参考JSR223 AssertionBeanShell断言也是我们常用的断言。

    软件测试汪简书地址 软件测试汪博客地址

    欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

    转载请注意出处,谢谢合作

  • 相关阅读:
    不用递归实现List转Tree
    spring cloud stream 局部异常和全局异常混乱
    HTTP协议详解(真的很经典)
    Python3 多线程压测接口数据:写入到influxdb:通过grafana展示
    Eclipse使用git最简易流程
    oracle patch包一定要775的权限
    安装19c grid时CRS-1705错误
    Ubutun 设置开机启动程序
    利用selenium将edge浏览器里面的网页保存为pdf
    Ruckus ICX7150 Switch License Upgrade from 1G to 10G
  • 原文地址:https://www.cnblogs.com/suim1218/p/11571125.html
Copyright © 2011-2022 走看看