什么是JMeter

什么是JMeter,为什么要用它呢?

Apache JMeter是纯Java开源软件,最初由Apache软件基金会的Stefano Mazzocchi开发,旨在加载测试功能行为和测量性能。可以使用JME性能测试,即针对重负载、多用户和并发流量测试Web应用程序。目前主要用于功能测试、数据库服务器测试等。

Introduction to JMeter
Introduction to JMeter

为什么是JMeter

Introduction to JMeter
Introduction to JMeter

是否测试过Web服务器以了解其工作效率?一台Web服务器可以处理多少并发用户?

假设有一天,老板要求为100个用户做www.baidu.com的性能测试。怎么做?

Introduction to JMeter
Introduction to JMeter

安排100个人同时使用PC和互联网访问baidu.com是不可行的,当测试10000个用户时,想想基础设施需求(对于百度这样的网站来说,这是一个很小的数字)。因此,需要一个像JMeter这样的软件工具来模拟真实的用户行为,并对站点进行性能/负载测试。

JMeter优势

JMeter的优势如下图所示

Introduction to JMeter
Introduction to JMeter
  • 开源许可(Open source license): JMeter是完全免费的,允许开发者使用源代码进行开发
  • 友好的GUI(Friendly GUI): JMeter非常容易使用,并且不需要花费时间来熟悉它
  • 平台无关性(Platform independent): JMeter是100%纯Java桌面应用程序。因此它可以在多个平台上运行
  • 完整的多线程框架(Full multi-threading frmework): JMeter允许通过单独的线程组对不同函数进行并发和同时采样
  • 测试结果可视化(): 测试结果可以以图表、表格、树、日志文件等不同格式显示
  • 易于安装: 只需复制并运行*.bat文件即可运行JMeter。无需安装。
  • 高度可扩展: 可以编写自己的测试。JMeter还支持可视化插件,允许扩展测试
  • 多种测试策略: JMeter支持负载测试、分布式测试、功能测试等多种测试策略。
  • 模拟: JMeter可以模拟具有并发线程的多个用户,对测试中的Web应用程序造成较重的负载
  • 支持多协议: JMeter不仅支持web应用测试,还支持数据库服务器性能评估。JMeter支持所有基本协议,如HTTP、JDBC、LDAP、SOAP、JMS和FTP
  • 记录和回放 -记录浏览器上的用户活动,并使用JMeter在Web应用程序中模拟它们
  • 脚本测试: Jeter可以与Bean Shell&Selenium集成,实现自动化测试。

JMeter是如何工作的?

JMeter的基本工作流程如下图所示

JMeter模拟一组用户向目标服务器发送求,并通过图形化图表返回目标服务器的统计信息

Introduction to JMeter
Introduction to JMeter

JMeter已完成的工作流,如下图所示

Introduction to JMeter
Introduction to JMeter

Jeter版本历史记录

版本 描述
1 首次正式发布
2.13 Java 6+
3 Java 7+
3.1 Java 7+
3.2 Java 8+
3.3 Java 8
4 Java 8/9

IT赶路人

专注IT知识分享