JMeter提供了六种定时器,下面让我们一起来学习下JMeter的定时器。

先明确一些概念:
1)定时器是在每个sampler(采样器)之前执行的,而不是之后;
是的,你没有看错,不管这个定时器的位置放在sampler之后,还是之下,它都在sampler之前得到执行。
2)定时器是有作用域的;当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;

3)如果希望定时器仅应用于其中一个sampler,则把该定时器作为子节点加入;
4)如果希望在sampler执行完之后再等待,则可使用Test
Action;
 
一、固定定时器(Constant Timer)
毫无疑问,这是最重要的定时器。
需要注意的是,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间。
如下图,固定定时器的时长设为300毫秒
定时器时长并不计入java请求的响应时间,但被计入“事务控制器”的总时间
如果你坚持看到这里,并且对loadrunner的think
time和pacing这两个概念还有记忆的话,我们可以有答案了:
对于“java请求”这个sampler来说,定时器相当于loadrunner中的pacing;对于“事务控制器”来说,定时器相当于loadrunner中的think time。

我们通常说的响应时间,应该大部分情况下是针对某一个具体的sampler(http请求),而不是针对一组sampler组合的事务
二、高斯随机定时器(Gaussian Random
Timer)
基本同上,只是定时器的延时时间是在指定范围内的正态分布。
三、均匀随机定时器(Uniform Random Timer)
同上,延时时间是在指定范围内,并且每个时间取值的概率相同。
四、固定吞吐量定时器(Constant Throughput Timer)
可以让JMeter以指定数字的吞吐量(即指定TPS,只是这里要求指定每分钟的执行数,而不是每秒)执行。吞吐量计算的范围可以为指定为当前线程、当前线程组、所有线程组,并且计算吞吐量的依据可以是最近一次线程的执行时延。
相信这种定时器在特定的场景下,还是很有用的。
五、同步定时器(Synchronizing Timer)
在该定时器处,使线程等待,一直到指定的线程个数达到后,再一起释放。可以在瞬间制造出很大的压力。
没错,它和loadrunner的集合点(rendezvous
point)差不多的功能。
六、BeanShell定时器(BeanShell Timer)
这个定时器,平时用不上。但实际上,它是最强大的,因为可以自己编程实现想要干的任何事。
有复杂需求时,就要靠它了。例如,希望在每个线程执行完等待一下,或者希望在某个变量达到指定值的时候等待一下。

JMeter 提供了六种定时器的更多相关文章

  1. jmeter(七)定时器

    知识来源有点复杂,其他测试工作者的博客,百度百科,搜集的电子文档,个人理解等等,限于水平和理解能力,可能有些内容有错误的地方... jmeter提供了很多元件,帮助我们更好的完成各种场景的性能测试,其 ...

  2. <转>jmeter(七)定时器

    本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...

  3. Jmeter组件2. Timer 定时器

    关于定时器,首先明确几个概念 定时器在每个Sampler执行之前执行 定时器有作用域,同一个作用域内的定时器会在域内Sampler执行之前都执行掉 如果要让某定时器只作用于一个Sampler,将定时器 ...

  4. JMeter学习-021-JMeter 定时器的应用

    定时器类型 下面我们看下jmeter提供了哪些定时器组件: 固定定时器 高斯随机定时器 Uniform Random Timer Synchronizing Timer Poisson Random ...

  5. jmeter使用总结

    1.1 什么是 JMeter Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具.用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域 ...

  6. JMeter学习1

    Jmeter的组织方式相对比较扁平,直接是TestPlan(相当于Project),TestPlan下创建的ThreadsGroup(相当于TestCase), Jmeter一个TestPlan也是一 ...

  7. Jmeter的操作流程

    1.1 什么是 JMeter Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具.用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域 ...

  8. 转:Jmeter 用户思考时间(User think time),定时器,和代理服务器(proxy server)

    在负载测试中需要考虑的的一个重要要素是思考时间(think time), 也就是在两次成功的访问请求之间的暂停时间. 有多种情形挥发导致延迟的发生: 用户需要时间阅读文字内容,或者填表,或者查找正确的 ...

  9. jmeter - 定时器

    jmeter提供了很多元件,帮助我们更好的完成各种场景的性能测试,其中,定时器(timer)是很重要的一个元件,最新的3.0版本jemter提供了9种定时器(之前6种),下面一一介绍: 一.定时器的作 ...

随机推荐

  1. 前端 - jquery方式 / iframe +form 方式 上传文件

    环境与上一章一样 jquery 方式上传文件: HTML代码 {#html代码开始#} <input type="file" id="img" > ...

  2. 1173 - The Vindictive Coach

    题目大意:n个不同身高的队员和教练的按照身高排成波浪形……每个人按照身高由低到高编号,其中第m个是教练,他必须在第一个,如果条件允许,排第二的要比m低,如果条件不允许,即其余人都比教练高,则要让差距尽 ...

  3. Light oj 1021 - Painful Bases

    题意:  给一个B进制的数,一个10进制的数K,B进制数有x位, 对着x位进行全排列的话,有x!种可能, 问这x!的可能中,有多少种可以整除K,各个位置上的数字都不同. 思路:状态压缩,数位DP #i ...

  4. springboot中.yml没有spring的小叶子标志解决办法

    我的idea springboot项目中有两个.yml文件,一个application.yml,一个log4j2.yml,但是只有application.yml显示的是树叶图标,如下所示 做如下配置后 ...

  5. js学习笔记--基础部分

    自增 自增 ++ 通过自增可以使变量在自身的基础上增加1 对于一个变量自增以后,原变量的值会立即自增1 无论使a++, 还是++a,都会立即使原变量的值自增1. 不同的是a++ 和++a的值不同. a ...

  6. mongodb 创建更新语法

    创建文档 向MongoDB插入数据,使用insert, 如:db.refactor.insert({"refactor's blog":"http://www.cnblo ...

  7. 修改主机IP地址

    IP:由192.168.1.1~192.168.1.254. 先使用电脑以动态IP的方式自动获取ip地址联网,然后通过以下方法查询子网掩码和默认网关地址:

  8. python操作三大主流数据库(1)python操作mysql①windows环境中安装python操作mysql数据库的MySQLdb模块mysql-client

    windows安装python操作mysql数据库的MySQLdb模块mysql-client 正常情况下应该是cmd下直接运行 pip install mysql-client 命令即可,试了很多台 ...

  9. 无备份mysql删除表后恢复

    mysql从5.6.17开始自动设置innodb_file_per_table为on,每个表设置单独表空间,数据不是集中存放在ibdata1里.下面测试下无备份后drop表后的恢复. 前奏生成数据字典 ...

  10. Mysql 递归获取多重数组数据

    多重数据 $data ,获取顶级下的所有下级id $data array:3 [▼ 0 => array:7 [▼ "id" => 1 "created_at ...