您的位置:首页 > 其它

13-性能测试之JMeter计时器

2018-03-30 11:12 183 查看

导读

各类计时器

1、计时器

计时器一般被我们用来设置延迟与同步,定时器的优先级高于Sampler,在同一作用域下有多个计时器存在时,它们都会执行;如果想让某一计时器只针对某一个Sampler有效,则要把计时器加到该Sampler下面。请看下图



我们在请求1后面(但是同级)加了一个特定时间计时器,设定时间是3秒,然后再请求2下面(注意下面,不是后面)加了一个特定计时器,设定时间3秒,点击启动,然后观察“查看结果树”,同时看右上角时间,大约3秒后,出现第一个请求,说明即便是计时器在请求1的后面,对其也是有效果的,然后大约再过6秒后(两个计时器同时生效),才出现请求2,然后再过3秒出现请求3。

或者等请求发送完成后,查看一下Sampler result页面的请求发送时间,来验证一下我前面写的结论是否正确

添加计时器步骤,如下图所示:



前面我们介绍过Constant Timer(特定时间计时器)和Synchronizing Timer(同步计时器),今天来看看其它的

2、Constant Timer

为了保持本节的完整性,简单说一下,设定固定时长,用来模拟思考时间



注意,时间单位是ms

3、Gaussian Random Timer

高斯随机计时器

这个计时器暂停每个线程请求的时间,大部分时间间隔发生在一个特定值附近。总延迟是高斯分布值(均值为0.0,标准差为1.0)的总和,乘以你指定的偏差值和偏移值。另一种解释它的方法是,在高斯随机定时器中,常量偏移量的变化有高斯曲线分布。



(1)Deviation in milliseconds:偏差,以毫秒为单位

(2)Constant Delay Offset:除了随机延迟之外,暂停的毫秒数。

上图中的设置就是说每个线程请求,暂停的时间是300ms+0~100ms的随机数,这个随机数符合高斯分布

4、Uniform Random Timer

均匀随机计时器



(1)Constant Delay Offset:固定等待时间

(2)Random Delay Maximum:小于等于设定值的随机延迟时间

如上图的计时器,每个请求发送前等待的时间应该是2秒到2+3=5秒之间

5、Synchronizing Timer

同步计时器,用来模拟多用户并发,或者说更严格的并发场景,比如秒杀活动,就要用这个东东了



需要注意上图中红框中的两个设置,第一个是等待多少个线程一起执行。第二个是超时时间(默认是0),当为0的时候,就是一直等,感情深,不见不散;当设定了非0的时间,就是等不够线程,到点了,就3了,友谊的小船,说翻就翻。

6、Precise Throughput Timer

精确的吞吐量计时器



编辑完,删掉了,前面的是根据时间来做定时器(到了多少秒就发请求);这里是根据吞吐量在做计时器(到了多少量就发请求),给人的感觉就像大坝蓄水,到了什么警戒线,就开始放水。但是看了官网不太明白,也找不到例子证明,暂时删除解释。

7、Constant Throughput Timer

固定吞吐量计时器



JMeter 根据线程的数量,请求的大小,调整请求的发送速度,以期保持在一个相对固定的吞吐量。具体不懂

8、BeanShell Timer

9、JSR223 Timer

10、Poisson Random Timer

这个计时器暂停每个线程请求的时间,大部分时间间隔发生在一个特定值附近。总延迟是泊松分布值和偏移值之和。

注意:如果您想建模泊松到达,请考虑使用Precise Throughput Timer 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: