Apache JMeter工具的基本介绍与安装

一、Apache JMeter简介

  JMeter是一个纯粹的Java编写的应用程序,它主要是用来进行负载和性能测试。原先它是为Web/HTTP测试而设计的。设计JMeter最初始的目的是用来测试Web Application但是现在已经扩展了很多功能。JMeter通常被用来对一些静态的或者动态资源(比如PHP, Java,ASP.Net等编写的Web,或者是Java Object, Data Bases and Queries, FTP 服务器等等)进行性能测试。 它通常模拟大量的数据对一个Server或者一个Server Group 网络等进行负载测试。然后通过分析它产生的性能图表来判断测试结果。和其他性能压测工具相比较,还是比较轻量级的,不够好像不支持IP伪装。官网有更详细的介绍 http://jmeter.apache.org/

  • 开源免费,基于Java编写,可集成到其他系统可拓展各个功能插件
  • 支持接口测试,压力测试等多种功能,支持录制回放,入门简单
  • 相较于自己编写框架活其他开源工具,有较为完善的UI界面,便于接口调试
  • 多平台支持,可在Linux,Windows,Mac上运行
  • 轻量级,和其他测试工具相比更加灵活性

二、Apache JMeter的安装配置

  Windows下Jmeter下载安装
    点击http://jmeter.apache.org/download_jmeter.cgi下载apache-jmeter-5.0.zip文件并解压
    
  2.1 直接进入apache-jmeter-5.0\bin目录双击jmeter.bat(注意:要装好JDK环境才可以)直接弹出UI操作界面 

   2.4 /bin 目录常用文件介绍

  • examples:目录下包含Jmeter使用实例
  • ApacheJMeter.jar:JMeter源码包
  • jmeter.bat:windows下启动文件
  • jmeter.sh:Linux下启动文件
  • jmeter.log:Jmeter运行日志文件
  • jmeter.properties:Jmeter配置文件
  • jmeter-server.bat:windows下启动负载生成器服务文件
  • jmeter-server:Linux下启动负载生成器文件
  • /docs目录——Jmeter帮助文档
  • /extras目录——提供了对Ant的支持文件,可也用于持续集成
  • /lib目录——存放Jmeter依赖的jar包,同时安装插件也放于此目录
  • /licenses目录——软件许可文件,不用管
  • /printable_docs目录——Jmeter用户手册

三、Apache JMeter的使用流程 

1、创建JMeter测试计划

  • 进入到JMeter/bin文件夹并双击jmeter.bat文件以启动JMeter界面。
  • 单击“测试计划”节点。
  • 将此测试计划节点重命名为Distributed Test
  • 选择Distributed Test节点,然后右键单击所选项目。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择Threads (Users) > Thread Group

2、添加采样器

接下来在Thread Group中添加一个HTTP RequestSampler。

  • 选择“Thread Group”,然后右键单击所选项。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择Sampler > HTTP request选项。
  • 它将添加一个空的HTTP请求采样器。

将HTTP Request Sampler的字段配置为:

  • Name - Home Page 。
  • 服务器名称或IP - 在这个示例中,Web服务器名称是 www.baidu.com 。

现在,将复制线程组并将其粘贴到测试计划中三次。 根据测试的网页重命名每个HTTP请求采样器。每个HTTP请求采样器的服务器名称都相同。

3、添加监听器

  • 选择“Distributed Test Plan”元素。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择Listener -> Aggregate Report

4、保存并执行测试计划

  • 单击File -> Save Test Plan as
  • 将整个测试计划保存为Distributed_test1.jmx

5、验证输出

可以在#Samples标签中查看每个网页的加载分布。

我们已经成功执行了分布式负载测试计划,但是不使用吞吐量控制器。 但是,在应用程序的实际负载测试期间,我们无法确定实际用户的数量。 在这种情况下,需要使用吞吐量控制器。

6、添加吞吐量控制器

首先,我们需要为测试计划创建一个主线程组(“Distributed Test”)。

  • 选择“Distributed Test”节点,然后右键单击所选项目。
  • 鼠标悬停在“Add”选项上,然后将显示元素列表。
  • 选择“Threads (Users)” -> “Thread Group”
  • 将此线程组重命名为Master Thread Group
  • 选择“Master Thread Group”节点,然后右键单击所选项。
  • 鼠标悬停在“添加”选项上,然后将显示元素列表。
  • 选择Logic Controller -> Throughput Controller。 

四、Apache JMeter使用注意事项

  • 使用过程中,一定要注意控件的执行顺序以及变量的作用域。
  • Windows下支持"/""\"并存模式,推荐使用"/",方便跨平台使用。
  • 如果要测试的接口可以组成一个流程,只需要顺序添加多个“HTTP 请求”的Sampler,各请求之间可以提取需要在上下文传递的数据作为参数,以保证流程中数据的一致性

参考

https://www.yiibai.com/jmeter/jmeter-distributed-load-test.html

基本介绍Apache JMeter 是100%的Java桌面应用程序。用于对软件做压力测试(例如Web应用)。 它可以用于测试静态和动态资源例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库, FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来在不同压力类别下测试它们的强度和分析整体性能。   另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。 【软件特点】   在设计阶段,JMeter能够充当HTTP PROXY(代理)来记录IE/NETSCAPE的HTTP请求,也可以记录apache等WebServer的log文件来重现HTTP流量。当这些HTTP客户端请求被记录以后,测试运行时可以方便的设置重复次数和并发度(线程数)来产生巨大的流量。JMeter还提供可视化组件以及报表工具把量服务器在不同压力下的性能展现出来。   相比其他HTTP测试工具,JMeter最主要的特点在于扩展性强。JMeter能够自动扫描其lib/ext子目录下.jar文件中的插件,并且将其装载到内存,让用户通过不同的菜单调用。   测试结果字段的意义   1、Label: 定义的HTTP请求名称   2、Samples: 表示这次测试中一共发出了多少个请求   3、Average: 访问页面的平均响应时间   4、Min: 访问页面的最小响应时间   5、Max: 访问页面的最大响应时间   6、Error%: 错误的请求的数量/请求的总数   7、Throughput:每秒完成的请求数   8、KB/Sec: 每秒从服务器端接收到的数据量
Apache JMeterapache-jmeter-5.4.3.zip)可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。
Apache JMeterapache-jmeter-5.4.3.tgz)可用于测试静态和动态资源、Web 动态应用程序的性能。 它可用于模拟服务器、服务器组、网络或对象上的重负载,以测试其强度或分析不同负载类型下的整体性能。 Apache JMeter 功能包括: 能够加载和性能测试许多不同的应用程序/服务器/协议类型: 网络 - HTTP、HTTPS(Java、NodeJS、PHP、ASP.NET,...) SOAP/REST 网络服务 FTP 通过 JDBC 数据库 LDAP 通过 JMS 的面向消息的中间件 (MOM) 邮件 - SMTP(S)、POP3(S) 和 IMAP(S) 本机命令或 shell 脚本 TCP Java 对象 全功能测试 IDE,允许快速记录测试计划(来自浏览器或本机应用程序)、构建和调试。 CLI 模式(命令行模式(以前​​称为非 GUI)/无头模式)从任何 Java 兼容操作系统(Linux、Windows、Mac OSX 等)加载测试 完整且可随时呈现的动态 HTML 报告 通过从最流行的响应格式、HTML、JSON、 XML或任何文本格式中提取数据的能力轻松关联 完全可移植性和100% Java 纯度。 完整的多线程框架允许多个线程并发采样和不同线程组同时采样不同功能。 缓存和离线分析/重放测试结果。 高度可扩展的核心: 可插拔采样器允许无限的测试功能。 可编写脚本的采样器(与 JSR223 兼容的语言,如Groovy和 BeanShell) 可以使用可插拔计时器选择多个负载统计信息。 数据分析和可视化插件允许极大的可扩展性和个性化。 函数可用于为测试提供动态输入或提供数据操作。 通过适用于 Maven、Gradle 和 Jenkins 的第3方开源库轻松实现持续集成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菲宇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值