Apache JMeter 是一款开源的性能测试工具,广泛用于测试 Web 应用程序、FTP 服务器、数据库等各种类型的服务器。本文将围绕 JMeter 的下载、功能、特色、同类软件对比、使用说明、安装步骤以及相关应用等方面进行详细介绍。
JMeter 的功能丰富,主要包括以下几个方面:
| 功能分类 | 具体功能 |
| | |
| 组件功能 | 线程组:管理请求的运行时间和数量限制。
取样器:生成各种协议的请求,用于编辑用户请求时的传参数据。
配置元件:辅助请求,简化请求数据编辑内容。
前置处理器:请求之前的数据管理。
后置处理器:响应之后的数据管理。
断言:针对请求后的响应内容做预期结果的判断。
逻辑控制器:控制各种请求或元件的运行顺序和规则。
监听器:对最后结果进行展示,可以图形展示,也可以数据形式展示。
定时器:控制请求的运行时间。 |
| 常用功能 | CSV 文件设置、用户定义的变量、用户参数、响应断言、断言结果、HTTP 请求、循环控制器、同步定时器、查看结果树、聚合报告等。 |
| 测试类型 | 可用于测试静态和动态资源、Web 动态应用程序的性能。能够模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 |
| 支持协议 | Web
JMeter 具有以下特色:
| 特色 | |
| | |
| 开源免费 | JMeter 是完全开源免费的工具(默认的功能都是不付费的,可能会使用一些商业付费的插件)。 |
| 跨平台 | 由于是基于 Java 开发的,具有良好的跨平台性,可以在 Windows、Linux、Mac OSX 等操作系统上运行。 |
| 多协议支持 | 支持多种协议,如 TCP、HTTP/HTTPS 等,并且提供灵活的插件扩展机制,支持第三方扩展其他的协议。 |
| 高可扩展性 | 高度可扩展的核心,可插拔采样器允许无限的测试能力,可编写脚本的采样器(与 Groovy 和 BeanShell 等 JSR223 兼容的语言),可以使用可插入计时器选择几个负载统计信息,数据分析和可视化插件允许很好的可扩展性和个性化。 |
| 功能齐全的测试 IDE | 允许快速记录测试计划(从浏览器或本机应用程序)、构建和调试。 |
| 多线程框架 | 完整的多线程框架允许多个线程同时采样和不同线程组同时采样不同功能。 |
| 缓存和离线分析/重放测试结果 | 支持缓存和离线分析/重放测试结果。 |
以下是 JMeter 与其他同类性能测试工具的对比:
| 工具名称 | 优点 | 缺点 |
| | | |
| LoadRunner | 功能强大,支持多种协议和技术,包括 Web 应用程序、数据库、ERP 系统、移动应用程序等;可视化脚本编辑器;报告分析功能丰富;并发模拟能力强。 | 价格昂贵;学习曲线较陡峭;需要较高的硬件要求;只能运行在 Windows 系统上。 |
| Gatling | 高效的性能,采用异步非阻塞的 IO 模型,可以支持高并发的性能测试;支持多种协议;强大的报告功能;开源免费。 | 纯代码的服务器端工具,没有可视化配置界面,学习曲线陡峭;社区资源相对较少。 |
| Locust | 完全基于事件,一个 locust 节点可以在一个进程中支持数千并发用户;有简洁的 HTML + JS 的 UI 用户界面,可以实时显示相关的测试结果;完全开源免费的源码功能,可以通过二次开发来满足需求越来越复杂的性能测试需要;脚本开发语言是 Python。 | 社区资源相对较少。 |
JMeter 的使用主要包括以下几个步骤:
1. 创建测试计划:选择“File” > “New” > “Test Plan”。
2. 添加线程组:右键单击测试计划并选择“Add” > “Threads (Users)” > “Thread Group”。配置线程组参数,如线程数(Number of Threads (users))、线程准备时长(Ramp
3. 添加 HTTP 请求:在线程组中添加一个 HTTP 请求,以模拟用户对 Web 应用程序的访问。右键单击线程组并选择“Add” > “Sampler” > “HTTP Request”,并配置服务器的主机名、端口、协议和路径等参数。
4. 添加监听器:监听器用于收集和显示测试结果。右键单击线程组并选择“Add” > “Listener”,如“View Results Tree”。
5. 运行测试:当准备好测试计划后,单击工具栏中的“运行”按钮来运行测试,测试结果将显示在监听器中。
JMeter 的安装步骤如下:
1. 下载 JMeter:打开 Apache JMeter 官方下载网站,在“Binaries”下拉菜单中,选择想要下载的 JMeter 版本(可以选择 zip 或 tgz 格式),点击下载按钮,等待下载完成。
2. 安装 JMeter:解压下载的 JMeter 压缩文件,将解压缩后的文件夹移动到想要安装 JMeter 的位置。进入解压缩后的文件夹,并找到 bin 目录。在 bin 目录中,双击 jmeter.bat(Windows)或运行“./jmeter.sh”(Linux / macOS)文件,启动 JMeter。
JMeter 可以用于以下类型的应用程序测试:
分布式系统等。