Jmeter之定时器

一、 定时器的作用域

  1. 定时器是在每个sampler之前执行的,无论定时器位置在sampler之前还是子节点下面
  2. 当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;
  3. 如果希望定时器仅对其中一个sampler起作用,则把定时器作为其子节点加入;

注意:定时器的时间不会计入单个sampler的响应时间,但如果有使用事务控制器,会计入事务控制器的时间,

对于事务控制器来说,定时器相当于loadrunner中的think time。

但是实战中发现,如果添加了定时器,比不加定时器单个sample的响应时间长,并且定时器中设置的思考时间越大,单个sample的响应时间就更长,后面通过升级Jmeter版本解决了此问题。如经测验,apache-jmeter-5.6.3就不存在此问题。

二、定时器介绍

1. 固定定时器(Constant Timer)

在这里插入图片描述

作用:让每个线程在服务请求之前按相同的指定时间停顿

2. 高斯随机定时器(Gaussian Random Timer)

在这里插入图片描述

如果需要每个线程的延迟时间是符合标准正态分布的随机时间停顿,那么使用这个定时器,总延迟 = 高斯分布值(平均0.0和标准偏差1.0)* 指定的偏差值+固定延迟偏移

3. 同步定时器(Synchronizing Timer)

在这里插入图片描述
作用:可以理解为集合点,当线程数量达到指定值后,再一起释放,可以瞬间产生很大的压力。

需要特别注意:如果使用“不停顿启动”会让集合点失效;启动按键:脚本设置好后,按启动按键启动,将会严格按设置的运行,在指定的ramp-up时间内准备线程;不停顿开始:按不停顿开始按键执行脚本,不会按照设置好的运行,开始后准备好的线程数直接发起请求。

4. 均匀随机定时器(Uniform Random Timer)

在这里插入图片描述

和高斯随机定时器的作用差异不大,它产生的延迟时间是个随机值,而各随机值出现的概率均等。总的延迟时间等于一个随机延迟时间加上一个固定延迟时间,用户可以设置随机延迟时间和固定延迟时间。

5. 常数吞吐量定时器(Constant Throughput Timer)

在这里插入图片描述

作用:可以让JMeter以指定数字的吞吐量(即指定TPS,只是这里要求指定每分钟的执行数,而不是每秒)执行。

Target throughput(in samples per minute):目标吞吐量。注意这里是每分钟发送的请求数,因此,对应测试需求中所要求的20 TPS ,这里的值应该是1200

吞吐量计算的范围可以为指定为当前线程、当前线程组、所有线程组等范围,并且计算吞吐量的依据可以是最近一次线程的执行时延。这种定时器在特定的场景下,还是很有用的。

6. 精准吞吐量定时器(Precise Throughput Timer)

在这里插入图片描述

Target Throught:目标吞吐量

Throught Period:表示在多长时间内发送Target Throught指定的请求数(以秒为单位)

Test Druation:指定测试运行时间(以秒为单位)

Number of threads in the bath:用来设置集合点,等到指定个数的请求后并发执行

其它参数默认即可。

Precise Throughput Timer根据吞吐量在做计时器(到了多少量就发请求),可以做到控制请求的速度和个数

7. Poisson Random Timer 泊松随机定时器

在这里插入图片描述

这个定时器在每个线程请求之前按随机的时间停顿,总的延迟就是泊松分布值和偏移值之和。

上面表示暂停时间会分布在100到400毫秒之间:

(1)Lambda(in milliseconds):兰布达值

(2)Constant Delay Offset(in milliseconds):暂停的毫秒数减去随机延迟的毫秒数

8. BeanShell Timer BeanShell脚本编写定时器

在这里插入图片描述

参数说明:

Reset Interpreter:每次迭代是否重置解析器,默认为false;在长时间运行的脚本中建议设置为true。

Parameters:BeanShell脚本的入参。入参可以是单个变量;也可以是数组,若是字符串数组,两个元素之间用空格隔开;也可以是常量。

File Name:BeanShell脚本可以从脚本文件中读取。

Script:在Script区直接写BeanShell脚本。

9. JSR223 Timer JSR223定时器

在这里插入图片描述

JSR223计时器可以使用JSR223脚本语言生成延迟

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值