Jmeter-定时器介绍与使用

  • 固定定时器
  • Uniform Random Timer
  • Precise Throughput Timer
  • Constant Throughput Timer
  • 高斯随机定时器
  • JSR223 Timer
  • Poisson Random Timer
  • Synchronizing Timer
  • BeanShell Timer

固定定时器

如果要让每个线程在请求​​之间暂停相同的时间,请使用此计时器。

实例:

1、添加线程组,添加HTTP请求,添加固定定时器,线程延迟为3000毫秒,添加查看结果树,运行。可以发现3s后请求才发送出去。


Uniform Random Timer

让线程暂停一个随机时间。由两部分组成:

  • Random Delay Maximum   随机延迟部分
  • Constant Delay Offset  固定延迟部分

实例:

1、添加线程组,添加 Uniform Random Timer ,添加HTTP请求,设置固定延迟部分未2000毫秒,随机延迟部分在2000ms。也就是线程延迟在2-4s之间

Precise Throughput Timer

此计时器会引入可变的暂停时间,计算该暂停时间的目的是使总吞吐量(例如,每分钟的样本数)尽可能接近给定的数字。 当然,如果服务器不能够处理它,或者如果其他计时器,或者没有足够的线程,或者耗时的测试元素阻止了吞吐量,那么吞吐量将会降低。

Constant Throughput Timer

该计时器引入了可变的暂停,其计算目的是使总吞吐量(以每分钟的样本数为单位)尽可能接近给定的数字。 当然,如果服务器无法处理吞吐量,或者其他计时器或耗时的测试元素阻止了吞吐量,则吞吐量会降低。(有点像Precise Throughput Timer)

高斯随机定时器

生成一个呈高斯分布的时间间隔。该计时器将每个线程请求暂停一段随机的时间,大多数时间间隔都在某个特定值附近发生。 总延迟是高斯分布值(平均值为0.0,标准偏差为1.0)乘以您指定的偏差值与偏移值之和。 解释它的另一种方式是,在高斯随机计时器中,恒定偏移周围的变化具有高斯曲线分布。

  • Deviation 偏差
  • Constant Delay Offset 固定延迟偏移

JSR223 Timer

JSR223 Timer传送门

Poisson Random Timer

设置线程延迟时间呈松泊分布Poisson Random Timer 传送门

Synchronizing Timer

 SyncTimer的目的是阻塞线程,直到X个线程被阻塞,然后它们全部被释放。

实例:

1、添加线程组,设置线程组为10,Ramp-up Period为2,Number of Simultaneous Users to Group by设置为10,添加HTTP请求,聚合报告,可以看到10个HTTP请求是一起生成的。

BeanShell Timer

我们可以使用beanshell Timer来设置线程延延迟。

BeanShell Timer实例

运行结果
我们在用户自定义变量中定义一个sleepTime变量,BeanShell Timer中引用该变量。让线程延迟3s。运行结果如下所示:


软件测试汪简书地址
软件测试汪博客地址

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

转载请注意出处,谢谢合作

13. Jmeter-定时器的更多相关文章

  1. JMeter定时器设置延迟与同步

    JMeter定时器一般用来设置延迟与同步.它的作用域和优先级如下: 定时器的优先级高于Sampler. 在同一作用域(比如控制器下)有多个定时器存在,每个定时器都会执行. 在某一Sampler节点下的 ...

  2. jmeter - 定时器

    jmeter提供了很多元件,帮助我们更好的完成各种场景的性能测试,其中,定时器(timer)是很重要的一个元件,最新的3.0版本jemter提供了9种定时器(之前6种),下面一一介绍: 一.定时器的作 ...

  3. JMeter—定时器(八)

    参考<全栈性能测试修炼宝典JMeter实战>第六章 JMeter 元件详解中第三节定时器 JMeter中的定时器一般用来设置延迟与同步.定时器的执行优先级高于取样器,在同一作用域下有多个定 ...

  4. jmeter定时器

    一.定时器的作用 1.定时器是在每个sampler(采样器)之前执行的,而不是之后(无论定时器位置在sampler之前还是下面): 2.当执行一个sampler之前时,所有当前作用域内的定时器都会被执 ...

  5. 13 jmeter性能测试实战--FTP程序

    需求 上传一个文件到服务器(put),下载一个文件到本地(get). 测试步骤 1.创建一个线程组. 2.线程组-->添加-->配置元件-->FTP请求缺省值(可有可无,相当于给“服 ...

  6. JMeter 定时器(Synchronizing Timer)之集合点应用

    性能测试中我们经常提到一个概念就是“并发”,其实在实际真实的性能测试中是不存在真正的并发的.为了更真实的模拟对一个请求的并发测试场景,我们通常设置一个集合点,JMeter中提供了这样的一个功能设置. ...

  7. JMETER 定时器 之 常数吞吐量定时器

    定时器: 默认情况下,Jmeter线程在发送请求之间没有间歇.建议为线程组添加某种定时器,以便设定请求之间应该隔多长时间.如果测试人员不设定这种延迟,Jmeter可能会在短时间内产生大量访问请求,导致 ...

  8. Jmeter(十三) - 从入门到精通 - JMeter定时器 - 上篇(详解教程)

    1.简介 用户实际操作时,并非是连续点击,而是存在很多停顿的情况,例如:用户需要时间阅读文字内容.填表.或者查找正确的链接等.为了模拟用户实际情况,在性能测试中我们需要考虑思考时间.若不认真考虑思考时 ...

  9. Jmeter(十四) - 从入门到精通 - JMeter定时器 - 下篇(详解教程)

    1.简介 用户实际操作时,并非是连续点击,而是存在很多停顿的情况,例如:用户需要时间阅读文字内容.填表.或者查找正确的链接等.为了模拟用户实际情况,在性能测试中我们需要考虑思考时间.若不认真考虑思考时 ...

  10. 三、Jmeter 定时器

    首先需要清楚Jmeter中各个元件的执行顺序: 元件的执行顺序 了解了元件有作用域之后,来看看元件的执行顺序,元件执行顺序的规则很简单,在同一作用域名范围内,测试计划中的元件按照如下顺序执行. (1) ...

随机推荐

  1. hive 排序

    1.全局排序(order by) Order by:全局排序,只有一个reducer ASC(ascend):升序(默认) DESC(descend):降序 2.每个MR内部排序(sort by) s ...

  2. tab区域折叠

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <title>co ...

  3. 关于plt.imshow()显示彩图问题

    https://blog.csdn.net/cnnmena/article/details/79613531

  4. Day10---Python的jieba库

    jieba库:中文分词第三方库 jieba.lcut(s) jieba.lcut(s,cut_all=true) jieba.lcut_for_search(s)

  5. Capture pictures using Jpython

    Becuz it is a jpython code, we can use it in Sikuli. from time import strftime, gmtime from java.awt ...

  6. 阿里云云监控agent插件 - Linux版

    阿里云云监控agent插件使用指南 1.安装(注意,要以“root”权限运行,复制 sudo后面的就行,别把#也复制进去) #64位 # sudo bash -c "wget -e 'htt ...

  7. Address already in use : connect

    Address already in use : connect 错误以及处理 项目中有过手写并发测试,在长时间的并发测试(超过20秒,美妙超过2000)的情况下出现了以上错误 处理方法如下(抄的) ...

  8. RestController和Controller的区别

    知识点:@RestController注解相当于@ResponseBody + @Controller合在一起的作用. 1) 如果只是使用@RestController注解Controller,则Co ...

  9. AJAX - 实现一个简单的登录验证

    /**Ajax 编写流程 * 1.创建 XHR (XMLHttpRequest)对象 var xmlHttpReq = false; // var xmlHttpReq = ""; ...

  10. AI-IBM-cognitive class --Liner Regression

    Liner Regression import matplotlib.pyplot as plt import pandas as pd import pylab as pl import numpy ...