Jmeter断言详细使用教程

目录

前言:

断言介绍与使用

  响应断言

  断言持续时间

  XML断言

  1、响应断言

  2、JSON Assertion

  3、Size Assertion(见图知意)

  4、JSR223 Assertion

  JSR223 Assertion实例:

  5、XPath Assertion

  6、Compare Assertion

  7、断言持续时间

  8、HTML Assertion

  11、XML断言

  12、XML Schema Assertion

     13、BeanShell断言


前言:

JMeter是一个性能测试工具,可以用来模拟多种场景下的压力测试,以检测应用程序的性能,一般用于Web应用性能测试,支持HTTPS、SOAP、REST、FTP、Database JDBC 等多种协议。在JMeter测试计划中,断言就是一种非常重要的元素,它可以帮助我们确保应用程序在测试中的正确性。

断言介绍与使用

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

Jmeter断言详细使用教程_第1张图片

  响应断言

  ·JSON Assertion

  · Size Assertion

  · JSR223 Assertion

  · XPath Assertion

  · Compare Assertion

  断言持续时间

  · HTML Assertion

  · MD5Hex断言

  · SMIME Assertion

  XML断言

  · XML Schema Assertion

  · BeanShell断言

  1、响应断言

Jmeter断言详细使用教程_第2张图片

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

  2、JSON Assertion

Jmeter断言详细使用教程_第3张图片

  也算是见图知意吧,这里需要注意一下。

  Additionally assert value:等于特定值。

  Match as regular expression:符合正则表达式。

  3、Size Assertion(见图知意)

Jmeter断言详细使用教程_第4张图片

  4、JSR223 Assertion

Jmeter断言详细使用教程_第5张图片

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

Jmeter断言详细使用教程_第6张图片

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

  JSR223 Assertion实例:

Jmeter断言详细使用教程_第7张图片

Jmeter断言详细使用教程_第8张图片

Jmeter断言详细使用教程_第9张图片

  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错误";
  }

  运行结果:

Jmeter断言详细使用教程_第10张图片

  5、XPath Assertion

Jmeter断言详细使用教程_第11张图片

  6、Compare Assertion

Jmeter断言详细使用教程_第12张图片

  7、断言持续时间

Jmeter断言详细使用教程_第13张图片

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

  8、HTML Assertion

Jmeter断言详细使用教程_第14张图片

  9、MD5Hex断言

Jmeter断言详细使用教程_第15张图片

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

  10、SMIME Assertion

Jmeter断言详细使用教程_第16张图片

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

  11、XML断言

Jmeter断言详细使用教程_第17张图片

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

  12、XML Schema Assertion

Jmeter断言详细使用教程_第18张图片

 13、BeanShell断言

  可以参考JSR223 Assertion,BeanShell断言也是我们常用的断言。

  作为一位过来人也是希望大家少走一些弯路,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步!

留【自动化测试】即可【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N5F7http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=8sFvl1Yi2ruJa1cqaaz0car85omUNLpx&authKey=vjglrc9OroNe2M%2F%2FA%2F%2B4JnNVTWfVWIt99KcXwqz%2F7dqHPCpZh97ZgT%2FHePxtriAs&noverify=0&group_code=574737577

Jmeter断言详细使用教程_第19张图片

 

 

你可能感兴趣的:(自动化测试工具,性能测试,软件测试,jmeter,自动化,测试工具,运维,appium,职场和发展)