JMETER 各组件执行顺序与作用域

本文详细介绍了JMeter的组件执行顺序,包括配置元件、前置处理器、定时器、采样器、后置处理器、断言和监听器。同时,解释了各组件的作用域,如配置元件可以跨线程组共享,采样器独立执行,监听器用于展示结果。此外,通过实例演示了配置元件变量在不同线程组中的共享情况以及在同一线程组内不同采样器之间的作用域。
摘要由CSDN通过智能技术生成

JMETER 各组件执行顺序与作用域

  1. 配置元件:
    配置元件的作用主要为了初始化默认值和变量,以便后续采样器引用相对于JAVA 语言中间定义一些常量和静态变量。配置元件作用域是最初始阶段处理,配置元件仅对其所在的测试树分支有效在同一个作用域的任何采样器前同时,线程组A中间定义了配置元件中间的用户定义变量,线程组同样可以引用该变量,所以,配置元件的作用域是可以跨线程组的。

 

2)前置处理器:
前置处理器和后置处理器是相对应的,只是前置处理器会在采样器发出请求之前做一些特殊操作。

3) 定时器
定时器是为了模拟用户操作习惯,每发送一个请求之前等待一个固定时长,如果不设定这种定时器,可能会在短时间内产生大量访问请求,造成服务器压力过大,假设线程组添加了多个定时器,那么为几个定时器的总时长同时影响作用域范围内的采样器。定时器作用只影响作用域内的采样器。

4) sampler(采样器)
sampler(采样器) 是真正干活的家伙,通过sampler(采样器) 对服务器发送请求,同时等待服务器响应如果采样器没有添加逻辑控制器,采样器会按照测试树中间的顺序进行执行。

5)后置处理器:
有时候在测试过程中间需要把服务器响应的数据作为下一个采样器中间的参数,所以,就需要用到后置处理器组件,后置处理器会在采样器发出请求之后做一些特殊操作。如果后置处理器附着在某个采样器之下,那么它只会在该采样器运行之后执行。

6)断言---Assertions:
在JMETER  性能测试过程中间,为了检查测试中得到的响应内容是否跟预期一致,所以,今天讲解一个新的组件断言,英文名称(Assertion),它的作用和loadrunner中的检查点类似。

7)监听器---Listener:

监听器是采样器运行结果以图表的形式显示出来,常用的监听器有“察看结果树”、“聚合报告”、“图形结果”等等。JMETER 的监听器图形结果跟LoadRunner 有一定的差距。

8) 逻辑控制器---Controller:
  逻辑控制器可以帮助用户控制JMeter的测试逻辑,特别是何时发送请求。逻辑控制器可以改变其子测试元件的请求执行顺序。

 

  

了解更多测试知识访问如下链接:

https://edu.csdn.net/course/detail/22948

https://edu.csdn.net/lecturer/3215

https://edu.csdn.net/course/detail/30898

https://edu.csdn.net/course/detail/25768

 

 

二、组件执行顺序:

测试计划的组件执行顺序,具体执行顺序如下:

  1. 配置元件
  2. 前置处理器
  3. 定时器
  4. 采样器
  5. 后置处理器
  6. 断言
  7. 监听器

 

三、组件作用域: 

作用域的原则是: 

  • 采样器:采样器是独立的,不存在作用域问题
  • 配置元件:配置元件定义变量,可以为测试计划下面的所有线程组中间的采样器共享。

 

  • 实例操作

实例一

同一个测试计划中间新建两个线程组名称为线程组1和线程组2,线程组1下面新增配置元件用户定义变量,验证变量作用域是否在线程组2中间也可以引用该变量。(实例中间的Debug Sampler 采样器是为了调试用,操作过程中间非必选项)

1新建一个线程组1

 

线程组1 右键---> sample-->Debug Sampler

 

  1. 线程组1 右键--->配置元件--用户定义的变量,变量名称为name,变量值为:JAMES;

 

  1. 线程组1右键--->sampler -->HTTP 请求,服务器名称或IP:www.baidu.com,Parameter 参数名称为:name,参数值引用用户自定义的变量${name};

 

  1. 线程组1 右键--->监听器--->察看结果树,运行,查看请求中间的参数

 

 

 5、新建一个线程组2

 

线程组2 右键---> sample-->Debug Sampler

 

  1. 线程组2右键--->sampler -->HTTP 请求,服务器名称或IP:www.baidu.com,Parameter 参数名称为:name,参数值引用用户自定义的变量${name};

 

  1. 线程组2 右键--->监听器--->察看结果树,运行,查看请求中间的参数

 

  1. 添加两个线程组之后,运行,我们看一下每一个采样器中间运行的结果,线程组1中间察看结果树请求:http://www.baidu.com/?name=JAMES,请求中间name 参数中间引用用户定义的变量的值。线程组2 中间察看结果树请求:http://www.baidu.com/?name=JAMES 请求中间name 参数中间也引用用户定义的变量的值

 

 

 

 

 

 

 

 

实例二:

   在采样器中间添加一个配置元件,同一个线程组中间其他的采样器是否能够共享配置元件中间的变量。

  1. 添加一个线程组

uploading.4e448015.gif正在上传…重新上传取消

  1. 线程组右键-->sample-->HTTP 请求,服务器名称或IP:www.baidu.com,Parameters 定义一个参数名称为:userame 值引用配置元件中间的用户定义的变量${name}

 

  1. one 采样器右键--->配置元件-->用户定义的变量,添加一个变量,变量名称为:name 变量值为:KOBE

 

  1. 线程组右键-->sample--->Debug Sampler 这一次添加时采样器中间Debug Sampler,名字为:two

 

  1. 线程组右键-->sample--->Debug Sampler 名字为:three

 

  1. 添加一个察看结果树的监听器,查看运行的结果,one 请求username 参数能够正常读取用户定义的变量值,two 中间的响应数据:name=KOBE,three 中间的响应数据:name=KOBE

 

 

了解更多测试知识访问如下链接:

https://edu.csdn.net/course/detail/22948

https://edu.csdn.net/lecturer/3215

https://edu.csdn.net/course/detail/30898

https://edu.csdn.net/course/detail/25768

 

通过上面的例子:在one 采样器子节点定义的用户变量,在two  three debug sampler处都能正常引用

 

 

 

备注:

    本次课程是主要讲解Jmeter 各组件的执行顺序和作用域,由于在JMETER 中间相当重要,同时,在很多面试的过程中间都会问到这一块的内容。为了加深大家对配置元件作用域的理解,例子中间提到用户定义的变量、Debug Sampler HTTP 请求采样器,大家只要按照上面例子操作即可,后续课程还会重点讲解配置元件和采样器方面的知识。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

传说三哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值