`

jmeter 断言

阅读更多

Jmeter断言的操作

JMeter 2009-09-10 16:31:54 阅读10 评论0   字号: 订阅

jmeter进行测试的时候,有时候,我们需要确定Jmeter究竟有没有正确工作,因为有时候,我们利用监听器查看的时候,监听器返回的结果是正确的,但是,实际上,我们发送的请求中的有些参数可能是错误的,系统并没有按照我们预期的方式进行相应,比如,一般典型的web应用一般都会:

 

1.有一个登录页,它是整个应用的入口。当用户登录之后,应用会将用户相关的安全信息放到session中。

2.有一个filter,它拦截请求,检查每个请求相关的session中是否包含有用户安全信息。如果没有,那么请求被重定向到登录页,要求用户提供安全信息。

 

在这种配置下应用前面介绍的测试计划,那么除了登录页之外的其它请求都将因为缺少用户安全信息,而使请求实际定位到登录页。如果不加断言,那么在监听器看来所有的请求都是成功。而实际上,这些请求最终都没有到达它们应该去的地方。显然,这种测试结果不是我们所期望的。

 

如果我们要确定Jmeter有没有按照我们的预期进行工作,我们应当考虑使Jmeter提供的断言,加到Sampler里面可以对返回的结果进行判断,例如判断HTTP返回结果里面是否含有某个字符串。如果断言为真,JMeter会标记请求为成功,否则标记为失败。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。

 

要在JMeter中添加断言,我们首先要知道我们期望返回什么结果,比如我们利用jmeter测试http请求,向程序添加数据,同时,Jmeter又有查询的http请求,那么,我们当然要验证我们利用jmeterhttp请求,是否成功添加了数据,这个时候,我们可以在查询的http请求中添加断言,如下图所示:

 

 

 

我们一般选择响应断言,如下图所示:

 

 

我们可以根据自己的需要选择要测试的响应字段,文本,还是代码,一般选择响应文本,然后,我们选择匹配规则,一般选择“包含”,如果要精确匹配,则可以选择“匹配”,但是选择“匹配”,因为响应的内容一般还包含其他的信息,比如html语言标签,所以很难准确匹配。然后在在要册似乎的模式下面,添加你要响应的内容。

 

添加好断言后,要添加一个监听器,以监听响应断言,选择添加——监听器——断言结果,则,如果在执行的时候,http请求返回的数据符合添加的断言内容,断言结果则为运行成功的灰色,否则,则为运行失败的红色。

 

以下是一个添加断言的例子,在这个例子中,主要是添加一条数据,然后再查询该数据,如下图所示:

 

在这个测试计划中,我们添加房型的时候,传递的roomTypeBean.roomID值是一个带参数的值,因为这个值是唯一的,所以,我们利用jmetertime参数,给它一个参数化的值,这样每次添加的时候,该值都会根据时间的不同而变化。然后,在查询的时候,我们可以将这个值当作查询的条件,这样,每次执行,只要添加了数据,则查询的时候,就能够查询到新添加的数据,然后,在查询的时候,我们可以将这个值当作是断言。

 

因为Jmeter是根据测试计划中的元件顺序执行的,如果直接在查询的时候,将添加的时候,参数化的值当作断言,则因为取time的时间不一致,断言结果肯定是错误的,我们要先定义一个基于线程组的用户参数,将time函数当作一个用户参数,然后再在添加和查询,以及断言的时候,调用定义的用户参数,则可以解决这个问题。

 

添加jmetertime函数,选择选项——函数助手,然后选择__time函数,如下图所示:

 

在“ormat string for SimpleDateFormat (optional)”中输入值“MMddhhmmss”,表示取月日时分秒。然后,点击生成,怎生成了time参数。

 

然后再在线程组中定义一个用户参数,具体是添加——前置处理器——用户参数,出现添加用户参数的界面,如下图所示:

 

 

在用户参数中,名称写你参数名称,如“current”,用户,输入在函数助手中生成的time参数${__time(MMddhhmmss,)}

 

添加好用户参数后,在添加和查询的时候,在需要参数化的地方输入定义的用户参数,具体格式是${参数名},比如,上面我们定义的参数名是curent,则参数值应该是${curent},在断言中,断言内容也应该是${curent}这个。

 

分享到:
评论

相关推荐

    JMETER 断言几种方式

    在性能测试过程中,JMeter 的断言功能是一个关键的组件,它允许测试人员验证服务器返回的响应数据是否符合预期,确保测试的有效性。断言类似于LoadRunner中的检查点,为测试添加了一层额外的判断机制。本文将详细...

    jmeter配合CSV,JSON断言测试

    本文将深入探讨如何使用Apache JMeter这款强大的性能测试工具,结合CSV数据源和JSON断言进行测试。JMeter是一款开源的Java应用程序,专为性能和负载测试设计,适用于Web应用、FTP服务器、数据库等多种协议。 首先,...

    Jmeter中断言的使用方法.doc

    Jmeter断言的使用方法 Jmeter断言是Jmeter提供的一种功能,用于判断测试结果是否符合预期。通过添加断言,用户可以验证Jmeter是否正确地执行了测试用例,并确保测试结果的准确性。 在Jmeter中,断言可以用来判断...

    jmeter模拟登录,jmeter使用,添加jmeter断言,断言结果等

    因为jmeter如果不添加断言,会根据返回的状态码进行判定。如下图所示:实际人员未添加成功,但是均显示成功。一般情况下,响应断言基本可以满足大部分需求。 此处当系统添加人员成功时,系统提示添加嘉宾成功,...

    jmeter实例(json断言+参数化)

    ### jmeter实例(json断言+参数化) #### 概述 本文档旨在详细解析如何在JMeter中利用JSON断言以及参数化技术来进行高效、准确的接口测试。通过具体的案例,我们将逐步介绍如何配置JSON断言来校验JSON响应数据的...

    jmeter3实现返回json串的断言jmeter-plugins-json.jar

    jmeter3实现返回json串的断言,将 jmeter-plugins-json-2.3.jar 复制到lib/ext/.

    jmeter接口测试案例

    JMeter提供了多种断言类型,如响应断言、JSON断言等。 - **7.2 使用示例** 例如,如果希望验证某个接口的响应结果中包含特定的字符串,则可以在响应断言中设置相应的规则。这样,在每次请求后都会自动检查响应...

    jmeter--bean shell断言所需要的包

    下载的jar包直接放入/lib/ext目录即可使用 import java.util.Arrays; ... String response_data = prev.... FailureMessage = "断言正确"; } else { Failure = true; FailureMessage = "断言错误"; } }

    Jmeter Jmeter Jmeter Jmeter Jmeter

    ### 关于JMeter的知识点详解 #### 一、概述 JMeter是一款100%纯Java桌面应用程序,专为测试CS架构(客户端/服务器)的软件而设计。它不仅可以用于测试静态和动态资源(如静态文件、Java Servlets、CGI脚本、Java...

    压力测试jmeter插件:JSONPathExtractor 版本:2.0

    JSONPathExtractor插件利用这一特性,使得测试工程师能够方便地从大量的JSON响应中提取变量,这些变量可以用于后续的HTTP请求或者其他JMeter断言,从而实现更复杂的测试逻辑。 在使用JSONPathExtractor时,有以下几...

    json断言jmeter-plugins-json.rar

    这个压缩包包含了一个名为 "jmeter3实现返回json串的断言jmeter-plugins-json.jar" 的文件,这是一个JMeter插件的JAR包。将此JAR文件添加到JMeter的lib/ext目录后,重启JMeter,就可以在断言部分找到与JSON相关的...

    jmeter中json插件

    这个提取器允许测试人员从JSON响应中抽取特定的值,并将它们保存为JMeter变量,供后续的断言或采样器使用。这在进行接口自动化测试时非常有用,因为往往需要从一个请求的响应中获取数据,然后用这些数据作为下一个...

    jmeter5.6.3压测工具 jmeter压测工具 jmeter压测工具

    JMeter由多种组件构成,包括采样器(Samplers)、监听器(Listeners)、断言(Assertions)、定时器(Timers)、配置元件(Config Elements)等。这些组件协同工作,构建出复杂的测试场景。 2. **采样器**: - ...

    Jmeter 中文使用手册(免费完整版).docx

    3. 强大的断言机制:Jmeter 提供了强大的断言机制,用户可以根据需要定义断言规则,验证测试结果。 4. 支持多种协议:Jmeter 支持多种协议,包括 HTTP、FTP、JDBC、JMS、LDAP 等。 Jmeter 的主要功能: 1. 压力...

    jmeter绿色包免安装

    - JMeter社区提供了丰富的插件,如图形化报告、分布式测试支持、额外的采样器和断言等,可以通过JMeter Plugins Manager方便地安装和管理。 - 使用JSON Path Extractor或XPath Extractor处理API测试中的动态参数。...

    JMeter性能测试脚本

    而丰富的插件库则扩展了JMeter的功能,如图形化展示、更复杂的断言、数据可视化等。 通过这一系列的学习,你将能够熟练掌握JMeter进行性能测试的基本技能,从创建简单的测试计划到执行大规模的分布式测试,再到深入...

    apache-jmeter-5.1.1安装包

    一旦启动,用户可以通过JMeter的GUI界面创建和编辑测试计划,设置采样器、监听器、断言、定时器等组件,以实现全面的性能测试方案。 总的来说,Apache JMeter 5.1.1是一个强大且灵活的性能测试工具,无论你是开发者...

    apache-jmeter-5.2.1

    Apache JMeter是一款强大的性能测试工具,专为评估和分析服务器、网络或对象的性能而设计。这个"apache-jmeter-5.2.1"压缩包包含JMeter的5.2.1版本,这是一个稳定且功能丰富的发布,适用于各种性能测试场景。 ...

    jmeter安装包apache-jmeter-5.1.1.rar

    Apache JMeter是一款强大的性能测试工具,主要用于Web应用的负载和压力测试。它的设计目标是模拟大量并发用户,以此来测试应用程序的稳定性和性能。在本压缩包"apache-jmeter-5.1.1.rar"中,包含了JMeter 5.1.1版本...

    jmeter5.5,linux版本测试

    4. **创建测试计划**:在JMeter的用户界面中,可以创建新的测试计划,设置线程组(模拟并发用户)、采样器(模拟请求)、断言(验证响应)、定时器(控制请求间隔)、监听器(收集和展示测试结果)等元素。...

Global site tag (gtag.js) - Google Analytics