zoukankan      html  css  js  c++  java
  • JMeter的定时器

    JMeter的十种定时器

    先明确一些概念:
    1)定时器是在每个sampler(采样器)之前执行的,而不是之后,不管这个定时器的位置放在sampler之后,还是之前。
    2)定时器是有作用域的;当执行一个sampler之前时,所有当前作用域内的定时器都会被执行;

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

    4)如果希望在sampler执行完之后再等待,则可使用Test Action;

    一、固定定时器(Constant Timer)
    毫无疑问,这是最重要的定时器。
    需要注意的是,固定定时器的延时不会计入单个sampler的响应时间,但会计入事务控制器的时间。
    如下图,固定定时器的时长设为300毫秒。

    定时器时长并不计入java请求的响应时间,但被计入“事务控制器”的总时间

    如果你坚持看到这里,并且对loadrunner的think time和pacing这两个概念还有记忆的话,我们可以有答案了:
    对于“java请求”这个sampler来说,定时器相当于loadrunner中的pacing;对于“事务控制器”来说,定时器相当于loadrunner中的think time。

    我们通常说的响应时间,应该大部分情况下是针对某一个具体的sampler(http请求),而不是针对一组sampler组合的事务

    二、高斯随机定时器(Gaussian Random Timer)
    基本同上,只是定时器的延时时间是在指定范围内的正态分布。

    三、均匀随机定时器(Uniform Random Timer)
    同上,延时时间是在指定范围内,并且每个时间取值的概率相同。

    四、固定吞吐量定时器(Constant Throughput Timer)
    可以让JMeter以指定数字的吞吐量(即指定TPS,只是这里要求指定每分钟的执行数,而不是每秒)执行。吞吐量计算的范围可以为指定为当前线程、当前线程组、所有线程组,并且计算吞吐量的依据可以是最近一次线程的执行时延。
    相信这种定时器在特定的场景下,还是很有用的。

    五、同步定时器(Synchronizing Timer)
    在该定时器处,使线程等待,一直到指定的线程个数达到后,再一起释放。可以在瞬间制造出很大的压力。
    没错,它和loadrunner的集合点(rendezvous point)差不多的功能。

    六、BeanShell定时器(BeanShell Timer)
    这个定时器,平时用不上。但实际上,它是最强大的,因为可以自己编程实现想要干的任何事。
    有复杂需求时,就要靠它了。例如,希望在每个线程执行完等待一下,或者希望在某个变量达到指定值的时候等待一下。

    未完待续......

  • 相关阅读:
    Attributes.Add用途与用法
    Reapter控件中更换Td背景色
    SQL SERVER查询时间条件式写法
    C# Cache何时使用及使用方法
    C#中Cache用法
    用sql语句将两个时间相减,得到时间距的DateDiff()函数
    HTML5 带进度条的异步文件上传原理
    Node环境Grunt开发流
    HTML5的Web SQL Databases(html5 本地数据库)API
    移动端范围拖动选择效果
  • 原文地址:https://www.cnblogs.com/quyong/p/5946974.html
Copyright © 2011-2022 走看看