Jmeter中通过线程组来模拟大用户并发场景,今天主要介绍三个常用的线程组,帮助我们设计更加完善的测试场景,另外介绍下场景执行时间如何计算。

一、Thread Group

  • 取样器错误后要执行的动作

        继续:遇错误继续执行,不影响场景运行。默认为继续,常用。

        Start Next Thread Loop:执行下次循环,当前循环剩余sampler不再执行。

        停止线程:停止当前线程,其他线程继续执行。

        停止测试:执行完剩余线程后停止测试。

        Stop Test Now:立即停止所有线程。

  • 线程属性

        线程数:即并发数,如图设置为100并发

        Ramp-Up Period (in seconds):并发用户加载时间,如图设置为1s,执行时1s内要加载100并发数

        循环次数/永远:填写具体数字,即为并发执行循环次数,一次场景下来,请求的数量=线程数*循环次数;选择永远,则一直执行下去,除非手工停止。

        Delay Thread creation until needed:延迟线程创建,知道需要时才创建。

        调度器:勾选后,调度器配置项设置生效,可设置场景持续执行时间、延迟启动时间、启动时间、结束时间。

        持续时间:场景持续执行的时间

        启动延迟:延迟多久执行

        启动时间:控制场景什么时间执行,一般晚上执行的时候设置。如果当前时间大于启动时间,启动后立即执行;如果当前时间小于启动时间,启动后等待启动时间到之后执行。

        结束时间:控制场景什么时候结束。如果启动时间或当前时间大于结束时间,运行后立即停止。

       场景运行时间包含:持续时间+线程加载时间+线程停止时间+循环执行的时间

二、jp@gc - Stepping Thread Group (deprecated)

初次安装Jmeter,是看不到jp@gc - Stepping Thread Group (deprecated)和jp@gc - Ultimate Thread Group的,因为这两个线程组是Jmeter Plugins提供的。

  • 安装步骤

打开Jmeter,菜单栏,选项》Plugins Manager》Custom Thread Groups组件安装,安装后重启Jmeter,右键添加线程组中即可看到。

  • 参数说明

        This group will start:线程数,图中为100个线程

        First wait for:第一个线程延迟多久启动,上图是0秒

        Then start:初始加载多少个个现成,图中为0个

        Next,add:下次加载多少个线程,图中为10个

        Threads every:运行多久后再加载线程,图中为1s

        Using ramp-up:加载next线程的时间,图中为0s,即初始化情况下,0s内加载10个线程,然后每隔1s再加载10个,加载100个需要9s。

        Then hold load for:全部线程加载完毕后持续运行多久,单位s,上图是100个线程全部加载完毕,持续运行60s。即,100并发运行60s。

        Finally stop/threads every:多长时间停止多少线程,上图是在1s内停止10个线程,停止100个需要9s.

       Elapsed time:加载线程的时间9s+持续运行的时间60s+线程停止的时间9s=78s

三、jp@gc - Ultimate Thread Group

  • 参数说明

        Start Thread Count:开始线程数量,即并发数,图中为10个并发

        Initial Dealay,sec:线程延迟运行时间,图中为0,及不延迟启动。

        Startup Time,Sec:线程加载时间,图中为10s,即10s启动100个线程。

        Hold Load For,Sec:持续运行时间,图中为60s。

        Shutdown Time:停止线程时长,图中为10s。

       Elapsed time=Initial Dealay+Startup Time+Hold Load For+Shutdown Time

四、Loadrunner-Controller设置场景

与上述二、三种的场景设置是不是类似,具体应用这里就不做介绍了。

拓展

Jmeter-阶梯场景设置

Oracle性能监控

Mysql性能监控

Jmeter-常用线程组设置及场景运行时间计算的更多相关文章

  1. Jmeter常用线程组设置及场景运行时间计算

    Jmeter中通过线程组来模拟大用户并发场景,今天主要介绍三个常用的线程组,帮助我们设计更加完善的测试场景,另外介绍下场景执行时间如何计算. 一.Thread Group 取样器错误后要执行的动作   ...

  2. jmeter接口测试-线程组设置(断言失败后用例停止执行)

    问题描述: jmeter跑接口用例的时候,其中一条用例的对断言失败后,后面的用例都不执行了! 解决思路1: 考虑应该有地方设置,在菜单栏找了半天没找到,百度也没有查到 解决思路2: jmeter源码导 ...

  3. Jmeter线程组设置

    添加线程组:右键测试计划->添加->Threads->线程组 左侧树形标签栏中,显示标签信息. 选中线程组,右侧内容栏中显示线程组的相关信息. 名称:可以给线程组设置一个个性化的命名 ...

  4. jmeter之线程组的使用

    线程组 在使用jmeter性能测试时,我们都得先添加个线程组,右键testplan-->添加-->Threads-->线程组.在线程组下执行. 问题:为了能够让jmeter在做性能测 ...

  5. jmeter之线程组循环次数

    有时候压测需要配置并发的持续时间,这个可以在jmeter中线程组页面进行配置 1.jmeter的循环次数2种使用场景 2.持续时间功能介绍 3.持续时间的使用场景 1.jmeter的循环次数2种使用模 ...

  6. Jmeter跨线程组传递参数

    Jmeter的线程组之间是相互独立的,各个线程组互不影响,所以线程组A中输出的参数,是无法直接在线程组B中被调用的. 但有时候为了方便,可以把不同模块接口放在不同线程组,就涉及不同线程组传参问题,比如 ...

  7. JMeter 中跨线程组 变量值传递的方法

    关于jmeter中跨线程组 变量值传递的方法         找了好久,终于找到方法了,赶紧整理下来. 1.在线程组1 中使用__setProperty函数设置jmeter属性值(此值为全局变量值), ...

  8. Jmeter 跨线程组传递参数 之两种方法

    终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直 ...

  9. Jmeter 跨线程组传递参数 之两种方法(转)

    终于搞定了Jmeter跨线程组之间传递参数,这样就不用每次发送请求B之前,都需要同时发送一下登录接口(因为同一个线程组下的请求是同时发送的),只需要发送一次登录请求,请求B直接用登录请求的参数即可,直 ...

随机推荐

  1. 3DMath

    线与面相交的计算 https://zh.wikipedia.org/wiki/%E7%BA%BF%E9%9D%A2%E4%BA%A4%E7%82%B9 什么是参数方程? 参数是参变数的简称.它是研究运 ...

  2. 从分布式一致性到共识机制(二)Raft算法

    春秋五霸说开 春秋五霸,是指东周春秋时期相继称霸主的五个诸侯,“霸”,意为霸主,即是诸侯之领袖.典型的比如齐桓公,晋文公,春秋时期诸侯国的称霸,与今天要讨论的Raft算法很像. 一.更加直观的Raft ...

  3. 二维条码扫描模组在肯德基KFC的无纸化点餐解决方案

    在如今提倡节约资源的环境下,肯德基在品牌发展中,逐渐实现无纸化点餐,不仅节约了纸质点餐单,而且还具有节约资源的示范作用.而其中二维码扫描模组是这套无纸化点餐方案的重点,在整套设备中,加入二维码扫描模组 ...

  4. Docker 学习8 Dockerfile详解2

    一.继续上章节Docker学习7 CMD命令后. 11.ENTRYPOINT a.容器启动后相当于会启动ENTRYPOINT + CMD 命令,CMD相当于参数传给entrypoint的 [root@ ...

  5. PhpStorm代码提示(省电模式)的设置与使用

    PhpStorm中有个,Power Save Mode(省电模式),开启则代码不能自动提示,关闭则可以. 开启/关闭: 1.点击“File”菜单,最下面,Power Save Mode,勾选或取消: ...

  6. 高性能HTTP加速器Varnish-3.0.3搭建、配置及优化步骤

    经过一天的努力,终于将Varnish缓存服务器部署到线上服务器了.趁着热乎劲儿,赶紧给大家分享一下.Varnish是一个轻量级的Cache和反向代理软件.先进的设计理念和成熟的设计框架是Varnish ...

  7. json转化技巧

    如果用户是一级下拉菜单,二级联动,动态加载内容到二级菜单,并在下方内容处,随着用户选择的内容动态加载相应内容. 实现的方法其实很简单 select部分:一级菜单选择内容,ajax动态加载,因为内容固定 ...

  8. Adams命令

    1. FIND_MACRO_FROM_COMMAND(STRING): 通过宏命令找到宏所在位置 2. DEFAULT_GROUND($_topgui.model): 获取默认地面Part 3. DB ...

  9. opencv imwrite保存图片花屏的问题

    问题:在项目中用opencv的imwrite保存图片出现花屏的问题,如下图: 思路:1.  因为项目中的图像数据(float类型,0-255)是在GPU中,保存的话:可以用CPU保存图片,也可以用GP ...

  10. VB控件间的拖放

    新建工程,放置控件Picture1,Text1,Text2,复制下面的代码运行 Text1和Text2可以互相拖放,也可以将Picture1拖放给Text1,Text2. Private Sub Fo ...