JMETER的三个线程组
JMETER的三个线程组
Jmeter有三个线程组分类:Thread Group(线程组)、setUp Thread Group、tearDown Thread Group,如下图所示:
(1)、thread group(线程组)
这个就是我们通常添加运行的线程。通俗的讲一个线程组,可以看做一个虚拟用户组,线程组中的每个线程都可以理解为一个虚拟用户。
(2)、setup thread group
一种特殊类型的ThreadGroup的,可用于执行预测试操作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试前进行定期线程组的执行;类似LoadRunner的init,测试开始时进行初始化的工作。
(3)、teardown thread group
一种特殊类型的ThreadGroup的,可用于执行测试后动作。这些线程的行为完全像一个正常的线程组元件。不同的是,这些类型的线程执行测试结束后执行定期的线程组;类似LoadRunnner的end,测试结束时进行回收工作。
线程组参数设置的意义
我们把线程组的设置分成3个区域:

区域一:在采样器失败后怎么处理(LoadRunner里面也有类似的运行设置选项,对比去学习):
1、continue:忽略错误,继续执行接下来的操作;
2、Start Next Thread Loop:忽略错误,线程当前循环终止,执行下一个循环。
3、stop Thread:停止当前正在执行的线程,退出该线程(不再执行此线程的操作),不影响其他线程正常执行;
4、stop Test:整个测试会在所有当前正在执行的线程执行完毕后停止。(等待当前执行的采样器结束后,结束整个测试;)
5、Stop Test Now:整个测试会立即停止执行,当前正在执行的取样器如果可能会被中断。
区域二:线程属性
1、Number of Threads(users):线程数,相当于模拟的用户数量,一个线程对应一个模拟用户;
2、Ramp-up Period(in seconds):达到指定线程需要的时间,例如线程数为100,时间设定为10s,那么就是10s加载 100个线程,每秒启动的线程数=100/10=10;
3、Loop Count:如果填具体的数值,就是循环对应的次数;如果选择“Forever”,则一直执行下去,直到手动停止;
4、Delay Thread creation until needed:延迟线程创建,直到需要才创建。
区域三:调度器配置
需要选中调度器(scheduler),调度器配置才生效。


LoadRunner中controller场景设置处也有类似设置,一般用于定时去跑场景,如我们需要晚上某个时间段去执行场景,我们可以设置场景执行的时间,下班前启动Controller,此时不会真正去执行,需要到达指定时间才去执行。
JMETER的三个线程组的更多相关文章
- 性能测试JMeter应用篇---同线程组、跨线程组实现token共用
方式一:将token值取出,设为全局变量,同线程组内可共用token值 1.登录请求如下: 2.从登录请求返回json字符串中提取token值,保存为变量token_0: 3.将token设置为全局变 ...
- 『动善时』JMeter基础 — 38、JMeter中实现跨线程组关联
目录 1.JMeter中实现跨线程组关联说明 (1)JMeter中实现跨线程组关联步骤 (2)测试计划内包含的元件 2.用户登陆请求的相关操作 (1)进行登陆操作获取Cookie信息 (2)把Cook ...
- Jmeter操作之跨线程组传递参数
思路:将某一线程组内的变量通过“__setProperty”函数设置成jmeter的全局变量,在另一线程组中通过“__P”函数调用即可. 1.添加-后置处理器-BeanShell PostProces ...
- jmeter多用户登录跨线程组操作传值
项目需求: 需要登录两个用户A.B,用户A操作完后会通知B,然后B再操作,B操作完结束或者再通知A. 实现思路: 1. 设置两个线程组Ⅰ.Ⅱ,组Ⅰ添加cookie管理器,里面添加用户A的操作:组Ⅱ添加 ...
- jmeter组件中 测试计划,线程组,sampler等等
[测试计划] 这边用户定义的变量,定义整个测试中使用的重复值(全局变量),一般定义服务器的ip,端口号 [线程组] 关于,线程组,我简单聊聊,有不对的地方欢迎大家拨乱反正 线程数:你需要运行的线程 比 ...
- Jmeter 快速入门--初识线程组
添加线程组 (1)thread group(线程组),setup thread group相当于lr初始化“环境”的初始化脚本,teardown thread group相当于lr测试完毕后对应的清除 ...
- jmeter接口测试 -- 设置跨线程组的全局变量
一.操作步骤 1.先提取被设置的变量 2.再用 [线程组] - [后置处理] - [BeanShell PostProcessor]来设置跨线程的全局变量:${__setProperty(新变量名,$ ...
- Jmeter不同线程组之间的变量引用
用过LoadRunner的小伙伴应该知道,它的脚本主要分为三个部分,即Login,Action,End三个模块.Login中一般是“初始化”环境所用,而Action模块主要做一些诸如压测的动作.举个例 ...
- Jmeter常用线程组设置及场景运行时间计算
Jmeter中通过线程组来模拟大用户并发场景,今天主要介绍三个常用的线程组,帮助我们设计更加完善的测试场景,另外介绍下场景执行时间如何计算. 一.Thread Group 取样器错误后要执行的动作 ...
随机推荐
- JVM规范
- Collection、Iterator、泛型初步
java.util.Collection 集合层次的根接口 java.util.List extends Collection ArrayList implements List 常用方法 boole ...
- vue打包后index.html界面报错
vue项目完成后,打包放到服务器上,打开index.html页面时发现一片空白并且报错 很明显是js和css引用不到. 解决办法: 修改vue项目config文件夹下面的index.js,将asset ...
- 07_mybatis延迟加载
1. 延迟加载 resultMap可以实现高级映射(使用association.collection实现一对一及一对多映射),association.collection具备延迟加载功能. 需求: ...
- 窥探C语言程序的编译、链接与.h文件
概述 C语言程序从源文件经过编译.链接生成可执行文件.那么编译与链接分别做了什么? 开发中为什么使用.h编写函数的声明?接下来使用案例说清楚为什么这样编写代码. C语言程序的编译和链接 C语言程序从源 ...
- Luogu P2717 寒假作业(平衡树)
P2717 寒假作业 题意 题目背景 \(zzs\)和\(zzy\)正在被寒假作业折磨,然而他们有答案可以抄啊. 题目描述 他们共有\(n\)项寒假作业.\(zzy\)给每项寒假作业都定义了一个疲劳值 ...
- 关于Cadence SPB 16.6 破解的一些关键步骤
网上搜索到的破解方法,一般来说流程都是没有什么大问题的.较详细的一个破解流程可参照: http://www.mr-wu.cn/cadence-orcad-allegro-spb-16-6-instal ...
- 0906NOIP模拟测试赛后总结
我进前十辣.然而有10个大佬去学LCT了于是没有考试. Dybala神和exzkt神分-rank1,奶风神和林哥分-rank3,wc.miemeng和DuanYue神140分-rank5. 我.ooo ...
- 报javax.servlet.ServletException: Servlet.init() for servlet [springmvc] threw exception的解决记录
1.异常详情: 2.异常分析: 从异常的详情中看出:companyService未找到,出现这种情况的愿意可能是companyServiceImpl类没有交给IOC容器管理,但是经过我已经在该类上打了 ...
- Vue Element 使用 icon 图标 (第三方)
Vue Element 使用 icon 图标 (第三方) element-ui 自带的图标库还是不够全, 还是需要需要引入第三方 icon, 自己在用的时候一直有些问题, 参考了些教程, 详细地记录补 ...