jmeter基础之定时器介绍及使用(下篇)

关于jmeter定时器我们之前已经了解了其中的几个,接下来我们继续熟悉一下的几个定时器的作用!

JSR223定时器

JSR223定时器实际可以通过java、JavaScript、beanshell等多种语言去实现我们的定时功能,类似于下面提到的beanshell定时器。

添加定时器–>JSR223定时器
在这里插入图片描述
在这里插入图片描述

接下来添加我们之前测试用的两个接口请求,然后编辑以下脚本:
在这里插入图片描述

Thread.sleep(5000); 意思是指等待5秒,然后我们运行看看结果:
在这里插入图片描述

可以看到两个接口之间的间隔时间大概在5秒左右!

同步定时器

这个定时器的作用就比较大了,主要是用来做并发测试时的重要工具,特别是某些限时抢杀活动时会用到,并发会更严格。

添加定时器–>同步定时器
在这里插入图片描述

接下来看下定时器界面:
在这里插入图片描述

模拟用户组数量:这个设置需等到满足这些数量的用户组时才会同时并发

超时时间:设置要求尽量贴近 线程数 / 线程加载时间的值

接下来我们添加两个请求接口,设置线程组数为10,用户组数量为10,超时时间为0,然后运行得到如下:
在这里插入图片描述

我们可以看到时间结果几乎一致!

泊松随机定时器

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

添加定时器–>泊松随机定时器
在这里插入图片描述

来看下定时器的界面配置:
在这里插入图片描述

Lambda(in milliseconds):兰布达值;

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

然后我们继续添加两个接口请求,以上数值体现的是两个接口请求的停顿时间在100-400毫秒之间,运行结果可得:
在这里插入图片描述

可以看到两个接口的时间差在100-400ms之间!

高斯随机定时器

这个定时器可以使每个线程的延迟时间是符合标准正态分布的随机时间停顿。

总延迟时间 = 高斯分布值(平均0.0和标准差1.0)* 指定的偏差值 + 固定延迟偏移

添加定时器–>高斯随机定时器
在这里插入图片描述

我们来看下定时器界面配置:
在这里插入图片描述

设置随机定时为1s,固定偏差为3s,添加两个请求接口,运行得到如下:
在这里插入图片描述

可以看到两个接口之间偏移了3s时间!

BeanShell定时器(常用且重要)

根据被控制器触发执行次数,去依次执行控制器下的子节点<逻辑控制器、采样器>。被触发执行可以由线程组的线程数、循环次数、逻辑控制器触发。

添加定时器–>BeanShell 定时器

看下界面配置:
在这里插入图片描述

可以看下这个定时器与JSR223 定时器比较相似,都是通过编写语言实现,添加两个接口请求,编写如下时间,运行得到如下结果:
在这里插入图片描述

可得到两个接口之间相差5秒!

-----------------------------------总结--------------------------------------

JMeter中的定时器一般被我们用来设置延迟与同步。定时器的执行优先级高于Sampler(取样器),在同一作用域(例如控制器下)下有多个定时器存在时,每一个定时器都会执行,如果想让某一定时器仅对某一Sampler有效,则可以把定时器加在此Sampler节点下。

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值