一、JMeter基本介绍

1. 压测不同的协议和应用

  1. Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
  2. SOAP / REST Webservices
  3. FTP
  4. Database via JDBC
  5. LDAP 轻量目录访问协议
  6. Message-oriented middleware (MOM) via JMS
  7. Mail - SMTP(S), POP3(S) and IMAP(S)
  8. TCP等等

2. 使用场景及优点

  • 功能测试
  • 压力测试
  • 分布式压力测试
  • 纯java开发
  • 上手容易,高性能
  • 提供测试数据分析
  • 各种报表数据图形展示

3. 下载

前往JMeter官网下载,下载后无需安装,解压即可使用
请添加图片描述
请添加图片描述

4. 目录文件

(1) bin

核心可执行文件,包含配置

  • jmeter.bat: windows启动文件
  • jmeter: mac或者linux启动文件
  • jmeter-server: mac或者Liunx分布式压测使用的启动文件
  • jmeter-server.bat: mac或者Liunx分布式压测使用的启动文件
  • jmeter.properties: 核心配置文件

(2) extras

插件拓展的包

(3) lib

核心的依赖包

  • ext: 核心包
  • junit: 单元测试包

请添加图片描述

### JMeter 基本组件功能介绍 #### 线程组 (Thread Group) 线程组定义了试计划中的虚拟用户数量以及这些用户的启动方式。每个线程代表个模拟的用户,在实际应用中可以用来模拟并发访问的情况[^2]。 ```java // 示例配置:创建个具有10个用户的线程组,循环次 <elementProp name="ThreadGroup.main_controller" elementType="LoopController"> <boolProp name="LoopController.continue_forever">false</boolProp> <stringProp name="LoopController.loops">1</stringProp> </elementProp> <intProp name="ThreadGroup.num_threads">10</intProp> ``` #### 逻辑控制器 (Logic Controllers) 用于控制采样器或其他元素的执行流程。通过不同的逻辑控制器可实现复杂的请求序列化操作,比如条件判断、循环调用等功能。 #### 采样器 (Samplers) 负责向服务器发送请求并接收响应消息。常见的有HTTP Request Sampler, JDBC Request等不同类型以适应各种协议和服务端口的需求。 #### 断言 (Assertions) 验证从服务端返回的数据是否满足预期的结果集标准。如果断言失败,则该样本会被标记为错误状态;反之则视为成功完成。这有助于确保应用程序按设计工作正常。 #### 配置元件 (Config Elements) 提供了种方法来设置默认参数值或动态变量供后续使用的取样器读取。例如Cookie Manager可以帮助管理会话期间产生的Cookies信息。 #### 监听器 (Listeners) 监听来自其他组件的消息并将它们记录下来以便分析查看。典型的例子包括View Results Tree 和 Summary Report ,前者允许开发者深入研究单次事务详情后者汇总统计指标如平均响应时间等。 #### 定时器 (Timers) 定时器可以让JMeter等待段时间再继续下个请求,默认情况下两个连续的操作之间是没有间隔的。合理利用定时器可以使负载更接近真实场景下的用户体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值