Jmeter之常用定时器(一)

  • 作者:lwj
  • 分类:Jmeter
  • 发表日期:2020-04-28 21:10:33
  • 阅读(1017)
  • 评论(0)

定时器的作用域

定时器的作用:默认情况下,JMeter线程按顺序执行采样器而不会暂停,通过添加定时器到线程组来指定请求间的延迟;

避免短时间内发出太多请求,从而使服务器不堪重负;

定时器的作用域:测试计划中的元件执行顺序依次为配置元件 - 前置处理器 - 定时器 - 取样器 - 后置处理器 - 断言 - 监听器

         1、定时器是在每个sampler(采样器)之前执行的,而不是之后(无论定时器位置在sampler之前还是下面);

         2、当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;

         3、如果希望定时器仅应用于其中一个sampler,则把定时器作为子节点加入;

         4、如果希望在sampler执行完之后再等待,则可以使用测试片段(Test Action);


固定定时器(Constant Timer)

通过Thread Delay设定每个线程请求之前的等待时间(单位为毫秒)。注意:固定定时器的延时不会计入当前sampler 的响应

时间里,但是会计入事务控制器的时间。对于事务控制器来说,定时器相当于loadrunner中的think time(思考时间:实际操

作中,模拟真实用户在操作过程中的等待时间)

思考:超时时间一般情况设置多大???

固定定时器中有用的参数只有一个 - 线程延迟; 单位为毫米,设置多少则作用域的取样器则线程延迟多少毫秒执行

:响应时间-大部分情况下是针对某一个具体的sampler(http请求),而不是针对一组sampler组合的事务。


同步定时器(Synchronizing Timer)

作用:模拟并发设置一个阀值(请求数量),当请求数达到这个阀值时,允许请求同时发出。例如:想测试一个关卡的并发,

那么并发的请求就是类似于多少人可同时关卡,而人一般情况下是不可能同时通过关卡的,因而我们可以在关卡设置一个集合

点,等人数满足一定的数量或者超出等待的时间,同时让集合的人通过关卡

注:首先,要清楚为什么要设置这个超时时间?

1、实际运行过程中,可能出现始终无法达到集合点设置的并发要求;如果出现这种情况的话Jmeter会一直卡顿在那里,等待满足要求,才会继续往下执行;

2、为了避免上述情况的发生,我们需要设置一下集合点的超时时间

  设置规则为:因为集合点超时时间的单位为ms

同步定时器(Synchronizing Timer)的超时时间设置要求:超时时间 > 请求集合数量 * 1000 / (线程数 / 线程加载时间)


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

生成一个呈高斯分布的时间间隔。该定时器将每个线程请求暂停一段随机的时间,大多数时间间隔都在某个特定值附近发生。

总延迟 = 高斯分布值(平均值为0.0,标准偏差为1.0) * 指定的偏差值 + 偏移值之和; 

解释它的另一种方式是 — 在高斯随机计时器中,恒定偏移周围的变化具有高斯曲线分布。

什么是高斯随机分布: 传送门

觉得不错,支持一下!

提交评论

您尚未登录,登录之后方可评论~ 登录 or 注册

评论列表

暂无评论
返回顶部

建议反馈

1. 可在博文底部留言评论

2. 发邮件到i_suichuan@163.com