JMeter—定时器(八)


参考《全栈性能测试修炼宝典JMeter实战》第六章 JMeter 元件详解中第三节定时器

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


一、高斯随机定时器
  高斯随机定时器生成一个呈高斯分布的时间间隔。
  偏差:设置的偏差值实际是一个浮动范围,单位毫秒
  固定延时偏差:固定延时时间
  用它可以模拟思考时间(用户提交表单前填写表单及思考的时间)


二、固定值的定时器
  固定值定时器,多用来模拟思考时间


三、Synchronizing Timer
  同步定时器,在性能测试中需要模拟多用户并发的场景,设置10个用户一起释放,相当于10个用户并发


四、Constant Throughput Timer
  固定吞吐量定时器,它会尽量保持采样器的一个固定的范围内。JMeter通过固定吞吐量定时器来控制吞吐量,如果吞吐量大过固定值则增加迭代间的间隔时间,反之减少。
  Calculate Thoughput based on选项:
    This thread only:仅针对当前线程,也就是每个线程相互不干扰,都是分开计算需要延迟的时间
    All active threads:针对所有线程,把所有线程的吞吐量合在一起作为因子计算
    All active threads in current thread group:针对当前线程组中的所有线程
    All active threads(shared):线程延迟计算是基于任意一个线程上次运行的时间,也就是随便获取一个线程的运行时间来计算
    All active threads in currnet thread group(shared):在当前线程组中任取一个线程的上次运行时间来计算延时


五、Uniform Random Timer
   让线程暂停一个随机时间,只不过力求随机时间能够更均匀,都会出现
    Random Delay Maximum:随机延迟时间部分
    Constant Dealy Offset:固定延迟时间


六、Poisson Random Timer
  设置的线程延迟时间呈松泊分布
    Lambda:松泊分布的期望和方差均为
    Constant Delay offset:固定延迟部分时间


七、BeanShell Timer
  JMeter支持BeanShell脚本语言,BeaShell Timer就用BeanShell来设置线程延迟间隔


八、BSF Timer
  BSF也是一种可以直接调用Java的脚本语言


九、JSR223 Timer
  JSR223作为一个标准,为脚本引擎提供了统一的接口、统一的访问模式

posted @ 2018-06-05 18:05  Tynam.Yang  阅读(441)  评论(0编辑  收藏  举报