响应断言 :

对服务器的响应进行断言校验

Apply to

应用范围: main sample and sub sample, main sample only , sub-sample only , jmeter variable

关于应用范围,我们大多数勾选“main sample only” 就足够了,因为我们一个请求,实质上只有一个请求。但是当我们发一个请求时,可以触发多个服务器请求,类似于ajax那种,那么就有main sample 和 sub-sample之分了。此外,对于有重定向的请求,并且勾选了“跟随重定向”, 那么这两个请求都是 sub-sample,重定向后的请求(第二个请求)就是main-sample,关于main sample and sub sample,有兴趣的可以看看这个帖子:帖子

响应字段

应用范围:响应文本,Document(Text),url样本,响应代码,响应信息,Response Header,ignore status

  • 响应文本: 服务器响应文本,一般普通http响应,都勾选这个。

  • Document(Text):一切Apache Tika 支持服务器响应,包括文本响应,还支持 PDF, Office, Audio, Video formats。jmeter会用Apache Tika 去解析服务器响应内容,会很耗内存,而且也很容易解析失败。所以一般普通http请求,不要选择这个。

  • url样本:是对sample的url进行断言。如果请求没有重定向(302),那么就是这个就是请求url。 如果有重定向(且跟随重定向),那么url就包含请求url 和 重定向url

  • 响应代码:http响应代码,如101,200,302,404,501等。但当我们要验证404,501等http响应代码时,需要勾选“ ignore status”。因为当http 响应代码为400,500时,jmeter默认这个请求时失败的。

  • 响应信息:http响应代码对应的响应信息,例如:OK, Found

    HTTP/1.1 200 Ok
    HTTP/1.1 302 Found
  • Response Header : 响应头信息,例如

    Server: Tengine
    Date: Thu, 12 Mar 2015 09:43:52 GMT
    Content-Type: text/html
    Content-Length: 260
    Connection: close
    Location: http://www.baidu.com/404.html

模式匹配规则

大专栏  Jmeter接口之响应断言详解3 id="包括:返回结果包括你指定的内容,支持正则匹配">包括:返回结果包括你指定的内容,支持正则匹配

  例如:
  响应字段为: 响应文本
  模式匹配规则:匹配
  断言为:1、invalid 2、[a-z]+
  当返回值为:{"msg":"channel invalid."} , 这两个断言都是ok的,返回true

匹配:

(1) 相当于 equals 。当返回值固定时,可以返回值做断言,效果和equals相同

(2) 正则匹配 。 用正则表达式匹配返回结果,但必须全部匹配。 即正则表达式必须能匹配整个返回值,而不是返回值的一部分。

  例如:
  响应字段为: 响应文本
  模式匹配规则:匹配
  断言为:1、{"msg":"channel invalid."} 2、{"msg":"[a-z]+ invalid."} , 3、[a-z]+
  当返回值为:{"msg":"channel invalid."} ,断言1 2 是ok的, 断言3是false
  当返回值为:{"msg":"channel invalid."} , 断言1 3是false, 断言2才是ok的。
  原因是,断言1 只能用于equals,而断言3 只匹配了返回值部分,而不是全部匹配。

Equals : 返回结果与你指定断言完全一致

SubString:与 “包括”差不多,都是指返回结果包括你指定的内容,但是subString不支持正则字符串

  例如:
  响应字段为: 响应文本
  模式匹配规则:匹配
  断言为:1、invalid 2、[a-z]+
  当返回值为:{"msg":"channel invalid."} , 断言1返回true, 但断言2返回false
  否:就相当于取反。 如果上面断言结果为true,勾选“否”后,最终断言结果为false。如果上面断言结果为false,勾选“否”后,则最终断言结果为 true。

Jmeter接口之响应断言详解的更多相关文章

  1. Jmeter笔记:响应断言详解

    转自:http://www.51testing.com/html/80/n-2430180.html 平时我们使用jmeter进行性能测试时,经常会用到断言.jmeter提供了很多种断言,本来想全都写 ...

  2. 【转】Jmeter笔记:响应断言详解

    平时我们使用jmeter进行性能测试时,经常会用到断言.jmeter提供了很多种断言,本来想全都写一下,但发现每一个断言里面的东西都很多,所以就先写一下我们经常使用的响应断言. 第一次在cnblog上 ...

  3. jmeter --响应断言详解

    jmeter --响应断言详解 响应断言 :对服务器的响应进行断言校验 (1)应用范围: main sample and sub sample, main sample only , sub-samp ...

  4. 『动善时』JMeter基础 — 29、JMeter响应断言详解

    目录 1.JMeter断言介绍 2.响应断言组件界面详解 3.响应断言组件的使用 (1)测试计划内包含的元件 (2)登陆接口请求界面内容 (3)响应断言界面内容 (4)查看运行结果 (5)断言结果组件 ...

  5. 【python3+request】python3+requests接口自动化测试框架实例详解教程

    转自:https://my.oschina.net/u/3041656/blog/820023 [python3+request]python3+requests接口自动化测试框架实例详解教程 前段时 ...

  6. python+requests接口自动化测试框架实例详解

    python+requests接口自动化测试框架实例详解   转自https://my.oschina.net/u/3041656/blog/820023 摘要: python + requests实 ...

  7. OpenCV学习C++接口 Mat像素遍历详解

    OpenCV学习C++接口 Mat像素遍历详解

  8. 微信JS接口汇总及使用详解

    这篇文章主要介绍了微信JS接口汇总及使用详解,十分的全面.详尽,包含分享到朋友圈,分享给朋友,分享到QQ,拍照或从手机相册中选图,识别音频并返回识别结果,使用微信内置地图查看位置等接口,有需要的小伙伴 ...

  9. “全栈2019”Java第六十五章:接口与默认方法详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

随机推荐

  1. 别了JetBrains,换Visual Studio

    Visual Studio一直是我排斥的,这么多年一致不用. 2019年JetBrains的注册码越来越频繁的被封杀,我承认使用盗版不对. 试过Eclipse+pydev搞python,但是todo用 ...

  2. typescript-学习使用ts-1

    Hello World 新建 greeter.ts 并写入以下内容: function greeter(person) { return "Hello, " + person; } ...

  3. 迅为-IMX6开发板Android Eclipse 导入Led应用程序工程

    本小节给大家详细讲解如何导入 Android 应用的工程文件.先解压迅为“iTOP-IMX6-Android4.4-LED 测试程序 r”压缩包.如下图所示,解压出ledtest 文件夹.<ig ...

  4. 吴裕雄--天生自然 PYTHON3开发学习:网络编程

    # 导入 socket.sys 模块 import socket import sys # 创建 socket 对象 serversocket = socket.socket( socket.AF_I ...

  5. [原]C++新标准之std::chrono::duration

    原 总结 C++11 chrono duration ratio  概览 std::chrono::duration 描述 类定义 duration_cast()分析 预定义的duration 示例代 ...

  6. 设置PPT版式

    1.点击视图,幻灯片母版 2.选中某个PPT母版,可进行编辑

  7. java 计算一个月有多少天和多少周

    import java.util.Calendar; /** * 功能概述:计算指定年月的天数和周数<br> */ public class Test{ public static voi ...

  8. Helvetic Coding Contest 2019 差A3 C3 D2 X1 X2

    Helvetic Coding Contest 2019 A2 题意:给一个长度为 n 的01序列 y.认为 k 合法当且仅当存在一个长度为 n 的01序列 x,使得 x 异或 x 循环右移 k 位的 ...

  9. linux上安装 mysql

    一.linux 上安装 mysql 1.查看mysql是否安装 rpm -qa|grep mysql 2.卸载 mysql yum remove mysql mysql-server mysql-li ...

  10. 浏览器CA认证流程

    转载:https://blog.csdn.net/qq_22771739/article/details/86479411 首先说说证书的签发过程: 服务方 S 向第三方机构CA提交公钥.组织信息.个 ...