Jmeter多种定时器实现方法解析
1、固定定时器(ConstantTimer)
用法(场景):更真实的模拟用户场景,需要设置等待时间,或是等待上一个请求的时间才执行,给sampler之间的思考时间
备注:如果需要每个步骤均延迟,则将定时器放在与请求持平的位置,若只针对一个请求延迟,则将定时器放在该请求子节点中。
(1)每个sampler均延迟启动,(包含第一个sampler)示例如下
(2)只针对某一个sampler请求延迟启动,示例如下
2、高斯随机定时器(GaussianRandomTimer)
下图中固定延迟2000ms,偏差1000ms,意思是时间延迟2000-3000ms之间
备注:如果需要每个步骤均延迟,则将定时器放在与请求持平的位置,若只针对一个请求延迟,则将定时器放在该请求子节点中。
3、均匀随机定时器(UniformRandomTimer)
和高斯随机定时器的作用差异不大,区别在于延时时间在指定范围内且每个时间的取值概率相同,每个时间间隔都有相同的概率发生,总的延迟时间就是随机值和偏移值之和。
RandomDelayMaximum(inmilliseconds)随机延迟时间的最大毫秒数
ConstantDelayOffset(inmilliseconds)暂停的毫秒数减去随机延迟的毫秒数
4、同步定时器(SynchronizingTimer)
- 这个定时器和loadrunner当中的集合点(rendezvouspoint)作用相似,其作用是:阻塞线程,直到指定的线程数量到达后,再一起释放,可以瞬间产生很大的压力。
- NumberofSimulatedUserstoGroupby:集合多少人后再执行请求(也就是执行的线程数)
- 注意:等同于设置为线程租中的线程数,一定要确保设置的值不大于它所在线程组包含的用户数。
- Timeoutinmilliseconds:指定人数多少秒没集合到算超时(设置延迟时间以毫秒为单位)
- 注意:如果设置Timeoutinmilliseconds为0,表示无超时时间,会一直等下去。
- 线程数量无法达到"NumberofSimultaneousUserstoGroupby"中设置的值,那么Test将无限等待,除非手动终止
- Timeoutinmilliseconds超时时间>线程组中(用户启动时间)
4、泊松随机定时器(PoissonRandomTimer)
- 这个定时器在每个线程请求之前按随机的时间停顿,大部分的时间间隔出现在一个特定的值,总的延迟就是泊松分布值和偏移值之和。
- 下图表示暂停时间会分布在100到400毫秒之间:
- Lambda(inmilliseconds)兰布达值
- ConstantDelayOffset(inmilliseconds)暂停的毫秒数减去随机延迟的毫秒数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。