jMeter - 概述

在深入了解 JMeter 之前,让我们先了解一些与任何应用程序测试相关的术语。

  • 性能测试 − 此测试在给定的基础设施配置下设定最佳的性能预期。它还会在测试过程的早期突出显示在应用程序投入生产之前是否需要进行任何更改。

  • 负载测试 − 此测试主要用于在设计的最大负载下测试系统。

  • 压力测试 −此测试试图通过压倒系统资源来破坏系统。

什么是 JMeter?

JMeter 是一种可以对不同协议或技术执行负载测试、面向性能的业务(功能)测试、回归测试等的软件。

Apache 软件基金会的 Stefano Mazzocchi 是 JMeter 的原始开发者。他编写它主要是为了测试 Apache JServ(现在称为 Apache Tomcat 项目)的性能。Apache 后来重新设计了 JMeter,以增强 GUI 并添加功能测试功能。

JMeter 是一个具有图形界面的 Java 桌面应用程序,它使用 Swing 图形 API。因此,它可以在任何接受 Java 虚拟机的环境/工作站上运行,例如 − Windows、Linux、Mac 等。

JMeter 支持的协议有 −

  • Web − HTTP、HTTPS 站点 'web 1.0' web 2.0 (ajax、flex 和 flex-ws-amf)

  • Web 服务 − SOAP / XML-RPC

  • 通过 JDBC 驱动程序的数据库

  • 目录 − LDAP

  • 通过 JMS 的消息导向服务

  • 服务 − POP3、IMAP、SMTP

  • FTP 服务

JMeter 功能

以下是 JMeter 的一些功能 −

  • 作为一款开源软件,它可免费使用。

  • 它具有简单直观的 GUI。

  • JMeter 可以对多种不同类型的服务器进行负载和性能测试 − Web - HTTP、HTTPS、SOAP、通过 JDBC 的数据库、LDAP、JMS、邮件 - POP3 等。

  • 它是一种独立于平台的工具。在 Linux/Unix 上,可以通过单击 JMeter shell 脚本来调用 JMeter。在 Windows 上,可以通过启动 jmeter.bat 文件来调用它。

  • 它具有完整的 Swing 和轻量级组件支持(预编译的 JAR 使用包 javax.swing.* )。

  • JMeter 以 XML 格式存储其测试计划。这意味着您可以使用文本编辑器生成测试计划。

  • 其完整的多线程框架允许多个线程并发采样,并允许单独的线程组同时对不同功能进行采样。

  • 它具有高度可扩展性。

  • 它还可用于执行应用程序的自动化和功能测试。

JMeter 如何工作?

JMeter 模拟一组用户向目标服务器发送请求,并通过表格、图表等返回显示目标服务器/应用程序性能/功能的统计信息。

请看下图,其中描述了 JMeter 的工作原理 −

JMeter Process