jmeter常用配置元件介绍总结之线程组

系列文章目录
1.windows、linux安装jmeter及设置中文显示

2.jmeter常用配置元件介绍总结之安装插件

3.jmeter常用配置元件介绍总结之线程组

4.jmeter常用配置元件介绍总结之函数助手

5.jmeter常用配置元件介绍总结之取样器

6.jmeter常用配置元件介绍总结之jsr223执行python脚本

7.jmeter常用配置元件介绍总结之定时器

8.jmeter常用配置元件介绍总结之逻辑控制器

9.jmeter常用配置元件介绍总结之后置处理器

10.jmeter常用配置元件介绍总结之前置处理器、测试片段

11.jmeter常用配置元件介绍总结之配置元件

12.jmeter常用配置元件介绍总结之断言

13.jmeter常用配置元件介绍总结之监听器

14.jmeter常用配置元件介绍总结之分布式压测

15.jmeter常用配置元件介绍总结之用linux服务器压测

1.线程组(用户)

1.1线程组

功能:是最基础最常用的线程组
参数讲解

  1. 在取样器错误后要执行的动作:设置请求遇到错误时,如何处理,是继续还是启动下一进程循环、停止线程、停止测试等
  2. 线程数:用于模拟用户的数量,如设置20,则表示20个虚拟用户
  3. Ramp-Up时间(秒):用多少时间来启动线程,如:20个线程,时间设置为10,则表示20/10=2,每秒启动2个线程,用10s时间启动完成20个线程
  4. 循环次数:勾选永远时会一直执行,不勾选输入数值时则循环指定次。如:20个线程,循环20次,则一共会产生20*20=400个请求
  5. 调度器–持续时间(秒):循环次数必须勾选永远才能使用,可以理解成不按次数,而是按时间来设置运行多久,如:设置为300,则线程会持续运行5分钟,5分钟后自动停止
  6. 调度器–启动延迟(秒):循环次数必须勾选永远才能使用,设置后点击运行后不会立即运行,要等待指定的时间后才会开始运行,如:设置为60,则点击运行按钮后,等待60s才开始运行

注意:调度器必须要把循环次数设置为永远才会生效

在这里插入图片描述
在这里插入图片描述

1.1.setUp线程组和tearDown线程组

功能:执行前置操作和执行后置操作
如图,页面的参数配置和普通线程组基本一直,唯一的区别是执行的优先级不同,setUp线程组永远是最新被执行的线程组,tearDown线程组则是所以线程执行完后最后执行的
应用场景:如登录系统时,没有账号,则我们可以用setUp线程组去批量注册账号,然后普通线程组使用注册的账号来执行具体的业务操作,最后则用tearDown线程来批量退出账号登录
即:前置任务 – 任务 – 后置收尾任务

在这里插入图片描述

1.2.Open Model Thread Group(开放模型线程组)

功能:以时间的方式,自定义测试模型、业务场景
可以配置调度计划,根据计划进行压测
rate(1/min):设置每分钟流量
random arrivals(10 min):设置持续时间
pause(1 min):设置暂停时间
/*comment*/:注释

可设置单位sec、min、hour、day,如:

rate(1/sec)
random arrivals(10 sec)
pause(1 sec)

如图演示设置的:

#每秒50tps,持续运行10s,然后暂停10s,启动下一阶段测试,每秒100tps,持续20s
rate(50/sec) random_arrivals(10 sec) pause(10 sec) 
rate(100/sec) random_arrivals(20 sec)

在这里插入图片描述
在这里插入图片描述

提示:以下的线程需要安装插件才能使用
在插件管理钟中搜索jpgc-casutg,然后下载在这里插入图片描述

1.3.bzm - Arrivals Thread Group(到达线程组)

可用阶梯式的方式控制线程达到目标tps后,持续压测
参数说明:
Target Rate (arrivals/sec):设置目标tps
Ramp Up Time (sec):多长时间内达到目标tps
Ramp-Up Steps Count:启动时分多个阶梯达到目标tps
Hold Target Rate Time (sec):达到目标tps后,持续运行多长时间
Time Unit:设置时间单位,minutes/seconds,分/秒

Thread lterations Limit:线程迭代的次数限制
Log Threads Status into File:将线程状态记录到文件中
Concurrency Limit:限制最大并发限制

如图:用两个阶梯,在10秒内,达到120tps,持续运行10秒钟

在这里插入图片描述

1.4.jp@gc - Ultimate Thread Group(终极线程组)

功能:可灵活的配置构建多种测试模型、场景,适合模拟有时间规律的场景
参数说明
Start Threads Count:设置该行的启动线程总数
Initial Delay:设置该行的线程启动等待时间
Startup Time:设置该行,用多长时间来启动线程总数,如:线程总数(Start Threads)设置100,启动时间(Startup Time)设置10s,则表示用10s启动100个线程
Hold Load For:设置该行,线程数全部启动后,持续运行的时间
Shutdown Time:设置改行,用多长时间来结束线程

在这里插入图片描述

1.5.jp@gc - Stepping Thread Group(递进线程组)

功能:阶梯性,递增式的不断增加并发数
参数说明
This group will start:设置需要启动的总线程数
First, wait for:设置第一次启动线程时的延迟时间
Then start:设置开始递增前的用户数,先提前准备线程数,后面递增时是在这个值上递增的,类似于设置一个初始值,如:设置100,后面每次递增10,就是100–110–120…

Next, add:每次增加多少个用户数
using ramp-up:设置用多长时间来启动这些线程,这个时间是同时对Then start、Next, add作用的
如:Then start=100; Next, add=10;using ramp-up=5
则表示,用5秒时间启动100个线程后,每隔5秒又增加10个线程,直到达到设置的总线程数

Then hold load for:所有线程全部加载完后,持续运行的时间,如:总线程是500,则表示,达到500这个最高的峰值后,继续持续执行的时间

Finally, stop:每次停止的用户数
threads every:多长时间停止一次线程数
如:Finally, stop=10;threads every=5;
则表示,每5秒停止10个线程,直到所有的线程全部停止

在这里插入图片描述

1.6.bzm -Free-Form Arrivals Thread Group(自由到达线程组)

参数说明
Start Value:设置开始的线程数
End Value:设置结束时的用户数
Duration:设置从开始到结束线程数启动时间

Time Unit:设置时间单位,minutes/seconds,分/秒
Thread lterations Limit:线程迭代的次数限制
Log Threads Status into File:将线程状态记录到文件中
Concurrency Limit:限制最大并发限制
如:Start=100;End=200;Duration=60,
则表示,将线程数加载到100后,再用60s的时间逐渐将并发增加到200

在这里插入图片描述

<think>好的,用户想了解JMeter常用组件及其功能和使用说明。首先,我需要根据用户提供的引用内容来整理相关信息。用户给的引用内容中提到了线程组、断言组件、作用范围和应用变量等,这些都是JMeter的核心组件。 首先,线程组(Thread Group)是必须的,因为任何测试计划都需要它来定义用户数量和测试行为。引用[1]和[2]都提到了线程组的功能,比如设置线程数、循环次数和启动延迟。这部分需要详细说明,包括不同线程组的类型,比如普通线程组和特殊线程组,以及它们的使用场景。 然后是断言组件,引用[1]提到了主流断言组件,但具体有哪些呢?可能需要补充常见的断言类型,比如响应断言、大小断言、持续时间断言等,并解释它们的作用和使用方法。同时,引用[4]提到了断言的作用范围,比如主样本、子样本等,这部分需要结合到断言组件的说明中。 接下来是配置元件,比如HTTP请求默认值,这在引用中虽然没有直接提到,但根据JMeter常用组件,配置元件也是重要的部分,用来统一管理请求的默认设置,减少重复配置。 监听器组件用于查看测试结果,比如查看结果树和聚合报告,这也是用户需要知道的部分,需要解释它们的功能和如何帮助分析测试数据。 另外,引用[3]提到JMeter最初用于Web应用测试,但已扩展到其他功能,所以可能需要提到JMeter支持的各种测试类型,比如HTTP、FTP、JDBC等,但用户的问题更关注常用组件,所以这部分可以简要带过。 在整理过程中,需要确保每个组件的介绍都包含功能描述、配置参数和使用场景,并正确引用提供的参考资料。例如,线程组的线程数设置引用[2],断言的作用范围引用[4]等。同时,要检查是否有遗漏的重要组件,比如定时器、前置处理器、后置处理器等,但根据用户提供的引用,可能主要关注线程组、断言、配置元件和监听器。 最后,生成相关问题时,要围绕用户可能进一步询问的方向,比如如何配置线程组参数、断言的类型和使用方法、测试结果分析工具等,确保问题能够帮助用户深入理解JMeter的使用。</think>### JMeter常用组件功能介绍及使用说明 --- #### 一、线程组(Thread Group) **功能**: 线程组是测试计划的起点,用于模拟用户并发行为。通过设置线程数、循环次数和启动延迟,控制负载规模。例如,设置线程数为100时,JMeter会模拟100个用户向服务器发送请求[^2]。 **类型**: 1. **普通线程组**:默认类型,支持设置线程数、循环次数、启动时间等参数。 2. **特殊线程组**(如`Ultimate Thread Group`):支持更复杂的并发模型,例如分阶段递增用户数。 **配置参数**: - **线程数**:模拟的虚拟用户数。 - **Ramp-Up时间**:所有线程启动完成所需时间(秒)。例如,线程数=100且Ramp-Up=10,表示每秒启动10个线程。 - **循环次数**:单个线程执行测试计划的次数。 --- #### 二、断言组件(Assertions) **功能**: 验证服务器响应是否符合预期,例如状态码、响应内容或响应时间。 **常见断言类型**: 1. **响应断言**:检查响应文本中是否包含指定字符串或正则表达式。 2. **大小断言**:验证响应数据的大小是否符合范围。 3. **持续时间断言**:判断请求响应时间是否超过阈值。 **作用范围**: - **主样本(Main sample)**:仅检查主请求的响应。 - **子样本(Sub-samples)**:检查嵌套请求(如页面中的图片加载)的响应[^4]。 --- #### 三、配置元件(Config Elements) **功能**: 为请求提供默认配置,减少重复设置。 **常用元件**: 1. **HTTP请求默认值**:统一设置协议、域名、端口等HTTP请求参数。 2. **CSV Data Set Config**:从CSV文件中读取参数,实现数据驱动测试。 **示例**: ```java // 配置HTTP请求默认值 协议: https 服务器名称: api.example.com 端口: 443 ``` --- #### 四、监听器(Listeners) **功能**: 收集并展示测试结果,如响应时间、吞吐量、错误率等。 **常用监听器**: 1. **查看结果树**:显示每个请求的详细响应数据,用于调试。 2. **聚合报告**:统计所有请求的平均响应时间、TPS(每秒事务数)等[^1]。 **使用技巧**: - 在高并发测试中,避免启用过多监听器以减少资源消耗。 --- #### 五、其他核心组件 1. **定时器(Timers)**:控制请求发送频率,如固定定时器(Fixed Timer)模拟用户思考时间。 2. **前置处理器(Pre Processors)**:在请求前执行操作,例如生成动态参数。 3. **后置处理器(Post Processors)**:从响应中提取数据,如正则表达式提取器。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值