Jmeter常用断言之响应断言详解

news2024/10/5 23:28:25

响应断言是最常用的一种断言方法,主要是对响应结果中的文本内容进行断言,比如响应结果是否包含指定的值,或者是否等于指定的值。响应断言可以适用各种返回类型的响应结果,如:Test、html、application/json、application/xml等。

一、断言添加方式

根据需要可在【测试计划】、【线程组】、【线程请求】下添加断言,一般在对应的【线程请求】下添加,如下图所示,即本文所介绍的。
添加路径:【线程请求-点击右键-添加-断言-对应的断言形式】
在这里插入图片描述

二、断言结果查看

2.1.【断言结果】看断言结果

添加路径:【测试计划-点击右键-添加-监听器-断言结果】
在这里插入图片描述
整个测试计划下所有请求所有断言结果报错信息均会在此显示,如下图所示,将所有断言结果的报错信息直接展示出来。
在这里插入图片描述

2.2.【查看结果树】看断言结果

添加路径:【测试计划-点击右键-添加-监听器-查看结果树】,整个测试计划下所有请求所有断言结果报错信息均会在此显示,如下图的形式,切换查看。
在这里插入图片描述

三、响应断言

响应断言界面设置,如下图:
在这里插入图片描述
如上图所示,响应断言分为【Apply to】【测试字段】【模式匹配规则】【测试模式】【自定义失败信息】五个部分。

3.1.Apply to

断言的作用域。
通常使用默认的【Main sample only】(比如给HTTP请求新增断言,选择了Main sample only,那么这个断言的作用域只针对此HTTP请求),没有对其他作用域有过深入的研究。
【Main sample and sub-samples】与【Sub-samples only】这两个作用域的场景是:部分请求一次会触发多个线程。
**【Main sample and sub-samples】**作用于主线程以及子线程,
**【Sub-sample only】**只用作于子线程。
如果选择了【Main sample and sub-samples】,即使主线程成功,子线程失败,那么断言也是以失败做结果。

3.2.测试字段

这个模块,指的是我们使用哪一块的返回信息做断言。
响应文本】指返回的【响应数据】的文本信息response body。
响应代码】指Http响应码,如200、500等。
响应信息】指的是http的【取样器结果】中的response message。
响应头】指http【响应数据】的响应头信息response hearders。
请求头】指http【请求数据】的请求头信息request hearders。
请求数据】指http【请求数据】的请求头信息request body。
URL样本】指断言的当前请求的URL地址,与http【请求数据】的请求头信息request body中的值做对比是否一致。注意:如果有重定向包含重定向url。
文档(文本)】通过Apache Tika从各种的文档中提取的文本进行验证,包括响应文本,pdf、word等等各种格式。
忽略状态(Ignore Status)】 一个请求多项响应断言时,忽略某一项断言的响应结果,而继续下一项断言。
注意:响应文本不等于响应信息。
以上测试字段的断言,可以随便找个接口尝试一下,在下图的结果中查找对应的字段值进行测试。。。
在这里插入图片描述

3.3.模式匹配规则

分为【包括】【匹配】【相等】【字符串】【否】【或者】
包括】响应的结果中包含指定的文本或者字段值,支持正则表达式。
匹配】完全匹配,期望值与实际结果必须完全一致,一般结合正则表达式使用。
相等】完全匹配,响应结果与指定的内容完全一致,不支持正则表达式。
字符串】返回结果,包含指定的字符串,不支持正则表达式。
】合并选择之后,断言结果true为false,false为true。
或者】当有多个断言时,只要有一个断言成功,那么最终结果就是成功的。

3.4.测试模式

断言的内容。如果有多个,按照顺序执行,没有选择【或者】的情况下,所有的断言通过之后,取样器结果才是成功的。

3.5.自定义失败信息

顾名思义,当失败是,可以定义个性化信息。

四、实例演示

请求数据设置2个断言,一个正确的,一个错误的
在这里插入图片描述
查看断言结果:显示有1个失败
在这里插入图片描述
还是上面的设置,如果在【模式匹配规则】处,勾选【或者】,则断言结果就会通过
在这里插入图片描述
断言结果:通过
在这里插入图片描述
还是上面的设置,如果在【模式匹配规则】处,勾选【否】,则断言结果原来失败的会通过,原来通过的会失败,如下图所示:
在这里插入图片描述
直接从【断言结果】处查看,可以看到历史的断言错误日志,比较方便对比
在这里插入图片描述
上面是一个简单的小示例演示【模式匹配】中的字段与【或者】【否】组合的效果,其他字段及模式匹配的断言,大家也可以随便找个接口都试试,挺好玩的。。。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/350792.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

安装 cplex 求解器

安装 cplex 求解器 安装 cplex 求解器和python-docplexcplex 安装matlab 用户安装 cplexpython 版本安装 cplex 求解器和python-docplex cplex 安装 cplex 是解决优化问题的一个工具箱,用来线性规划、混合整数规划和二次规划的高性能数学规划求解器。可以理解成&a…

《爆肝整理》保姆级系列教程python接口自动化(十六)--参数关联接口后传(详解)

简介 大家对前边的自动化新建任务之后,接着对这个新建任务操作了解之后,希望带小伙伴进一步巩固胜利的果实,夯实基础。因此再在沙场实例演练一下相关接口。我们用自动化发随笔之后,要想接着对这篇随笔操作,不用说就需 …

实现聊天消息绘制、图文混排(源码,支持Windows、Linux)

在实现聊天软件时,渲染文字表情图文混排是一项非常繁琐的工作,再加上还要支持GIF动图、引用消息、撤回消息、名片等不同样式的消息渲染时,就更加麻烦了。 好在我们可以使用 ESFramework 提供的 IChatRender 组件,使用它我们就能轻…

小众免费的短视频素材库

推荐5个小众但好用的视频素材网站,免费可商用,视频剪辑、自媒体必备~ 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYxMjky ​ 菜鸟图库网素材非常丰富,网站主要还是以设计素材为主,高清视频素材也很多,像风…

(考研湖科大教书匠计算机网络)第四章网络层-第六节3:开放最短路径优先OSPF的基本工作原理

获取pdf:密码7281专栏目录首页:【专栏必读】考研湖科大教书匠计算机网络笔记导航 文章目录一:OSPF概述(1)概述(2)细节阐述A:链路状态和代价B:问候分组和邻居表C&#xff…

如何保证集合是线程安全的 ConcurrentHashMap如何实现高效地线程安全?

第10讲 | 如何保证集合是线程安全的? ConcurrentHashMap如何实现高效地线程安全? 我在之前两讲介绍了 Java 集合框架的典型容器类,它们绝大部分都不是线程安全的,仅有的线程安全实现,比如 Vector、Stack,在性能方面也…

智能家居项目(一)之基础概念引入

目录 一、智能家居功能整体流程 二、设计模式 三、C语言中结构体的新玩法,承接上一步 四、工厂模式概念引入 一、智能家居功能整体流程 1.控制区语音识别模块socket客户端 2.外设区继电器组控制灯,远程终端子系统,窗帘等,火灾…

数据分析面试---假设检验知识点

文章目录一、假设检验是干啥的二、假设检验基本原理/思想三、假设检验步骤显著性检验(significance test)统计显著性和置信度补充:第一类错误和第二类错误p值是啥链接1数理统计中的统计推断问题主要有两大类:参数估计问题和假设检验问题参数估计问题 所指…

[datawhale202302]CS224W图机器学习:图的基本表示及特征工程

结论速递 本章涉及了图基本表示及传统的特征工程。 图由节点和连接组成,节点和连接上都可以有不同的属性。根据属性的特点,分为几类不同的图,其中异质图和二分图是比较重要的特殊图。 图可以用邻接矩阵进行结构化表示,如果图过于…

单元测试的优势

单元测试提供了许多好处,包括及早发现软件错误、促进变化、简化集成、提供文档来源以及许多其他优点,接下来将对其进行详细介绍。 1、使流程更灵活 单元测试的主要好处之一是它使编码过程更加灵活,更遵循敏捷开发方法论。 当向软件中添加越来…

如何加入new bing候补名单

如何加入new bing候补名单 我们都知道现在最新版edges中已经提示我们可以加入new bing候补名单,但国内环境下无法正常加入new bing候补名单,这篇文章讲告诉你如何绕过限制加入new bing候补名单 下载配置 HeaderEditor 插件 下载地址microsoftedge.mic…

XDSpy APT组织近期针对俄罗斯国防部的攻击活动分析

一 概述 XDSpy是ESET于2020年首次披露的APT组织,该组织最早活跃于2011年,主要针对东欧和塞尔维亚地区的政府、军队、外交部及私人公司进行窃密活动。2020年9月,该组织在攻击活动中使用Covid-19主题诱饵下发恶意Windows脚本文件(W…

高通平台开发系列讲解(Sensor篇)IAM20680驱动程序的使用

文章目录 一、相关编译宏二、设备树配置三、打开iio自动挂载脚本四、模块加载验证沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇文章将介绍 IAM20680 驱动程序。 一、相关编译宏 目录:arch/arm/configs CONFIG_IIO_BUFFER=y CONFIG_IIO_KFIFO_BUF=y CONFIG_II…

Highcharts.Chart

Highcharts 是一个使用javascript 脚本来生成图表的工具,和jfreechart 作用类似,都用来生成各种图表,并支持图片的导出和打印。 从官网 www.highcharts.com 上下载的压缩表中的example中有各种图表的例子。 要编写生成图表的例子建议从 文…

生成小分子力场TOP

生成小分子力场TOP ATB网站 生成基于Amber力场适配gromacs格式TOP文件, 对于使用GaussView 计算resp电荷可以参考: https://blog.csdn.net/weixin_42486623/article/details/129055384 下面我们使用上面是生成的mol2文件来生成基于Amber的力场&#x…

Linux网络编程 | 彻底搞懂零拷贝(zero-copy)技术

传统文件传输的问题 在网络编程中,如果我们想要提供文件传输的功能,最简单的方法就是用read将数据从磁盘上的文件中读取出来,再将其用write写入到socket中,通过网络协议发送给客户端。 ssize_t read(int fd, void *buf, size_t …

JVM05 方法区

Person:存放在元空间,也可以说方法区 person:存放在Java栈的局部变量表中 new Person():存放在Java堆中 1.方法区的理解 方法区主要存放的是 Class,而堆中主要存放的是 实例化的对象 方法区(Method Area…

ubuntu清理挖矿病毒

0 序言 我之前搭建的hadoop用于测试,直接使用了8088和9870端口,没有放入docker,从而没有端口映射。于是,就被不法之徒盯上了,hadoop被提交了很多job,使得系统被感染了挖矿病毒,在前几天阿里云站…

企业实施了IM移动平台后,可以在上面做什么?

企业实施了IM移动平台后,可以有很多服务场景,其中员工服务平台是一个很好的场景组合。企业固然是以赢利为目的的组织,然而,在一个企业中同样需要有人文关怀的氛围。这种人文关怀,说到底,就是一种以员工为本…

阿里巴巴主流数据库连接池Druid入门

一.数据库连接池的必要性 (一).传统数据库连接模式的的步骤 1.在主程序中创建连接 2.进行sql操作 3.关闭数据库连接 (二).传统数据库连接模式存在的问题 1.浪费时间:每次连接时都要验证登录和将conn加载到内存, 2.不能大规…