1、了解
JMeter是一款开源的性能测试工具,它主要用于模拟多种负载条件下的应用程序或服务器的性能和功能。JMeter可以发送不同类型的请求,如HTTP、HTTPS、FTP、SOAP、REST等,并且可以模拟多种负载类型,例如并发用户、线程组、定时器等。
JMeter具有以下主要特点:
- 可以对各种应用程序和协议进行测试,包括Web应用程序、数据库、文件服务器等。
- 支持分布式测试,可以在多台机器上同时执行测试以模拟高负载条件。
- 提供丰富的图形化界面,方便用户创建和编辑测试计划。
- 可以生成测试报告和图形化图表,以便分析和评估应用程序的性能。
使用JMeter,你可以进行性能测试、负载测试、压力测试和功能测试,以确保你的应用程序或服务器能够在各种条件下正常工作并具有良好的性能。
除了基本的测试操作之外,JMeter还提供了许多高级功能和扩展,以满足更复杂的测试需求。以下是一些JMeter的高级功能和扩展:
-
分布式测试:JMeter支持将负载测试分布在多台计算机上,以模拟高负载情况。您可以使用JMeter Server和JMeter Client来配置和运行分布式测试。
-
集成CI / CD流程:JMeter可以与Jenkins等CI / CD工具集成,以自动化负载测试和性能监测,以确保应用程序在不同环境和平台上的稳定性和可扩展性。
-
数据库测试:JMeter提供了丰富的数据库测试功能,您可以轻松地模拟并测试数据库连接、查询、更新、事务等。
-
安全测试:JMeter支持测试Web应用程序和Web服务的安全性能。它可以发送不同类型的攻击,例如SQL注入、跨站点脚本(XSS)等。
-
脚本自动生成:JMeter提供了多种脚本自动生成插件,例如JMeter Recorder和Badboy,可以根据用户实际操作自动生成测试脚本。
-
自定义插件:JMeter提供了丰富的可扩展性,您可以使用Java编写自定义插件,例如自定义断言器、 JMX监视器等。
-
JMeter插件:JMeter插件是针对JMeter的开源扩展,提供了丰富的功能和图形化界面,例如动态负载测试、图表和报告增强、高级调试等。
请注意,这些功能和扩展不是JMeter的全部功能,而是一些可用的选项。使用JMeter需要根据项目需求选择适当的功能和插件。同时,需要注意负载测试可能对目标应用程序或服务器造成较大压力,因此需要谨慎管理和执行测试。
2、下载
下载网址:https://jmeter.apache.org/download_jmeter.cgi
3、安装
3.1、默认你已经安装了JDK环境
3.2、配置系统环境
3.2.1、此电脑右击然后点击属性
3.2.2 点击高级系统设置
3.2.3、点击环境变量
3.2.4、添加系统变量
3.2.5、添加path变量
4、使用
当使用JMeter进行性能测试时,您可以按照以下步骤进行操作:
打开Jmeter:
创建测试计划:打开JMeter并创建一个新的测试计划。测试计划是测试的顶层容器,你可以在其中添加线程组、请求和其他组件。(可以不用创建打开就是一个Test Plan)
添加线程组:线程组定义了测试中的用户行为和负载条件。您可以设置并发用户数、循环次数、Ramp-Up时间等。
添加完线程后就编辑线程组参数
添加请求:JMeter支持多种类型的请求,如HTTP、FTP、SOAP、REST等。根据您的测试需求,选择合适的请求类型,并配置请求参数。
配置请求参数:根据请求类型,您可能需要提供请求的URL、请求方法、请求头、请求体等相关参数。确保正确配置请求参数以模拟真实的用户行为。
添加断言:断言用于验证请求的响应是否符合预期。您可以添加断言来检查响应代码、响应时间、响应内容等。
添加结构数与综合图方便查看结果
注意:综合报告的参数意思:
Label----每个请求的名称,比如HTTP请求等
#Samples----发给服务器的请求数量
Average----单个请求的平均响应时间
Median----50%请求的响应时间90%Line----90%请求响应时间
95%Line----95%请求响应时间
99%Line----99%请求的响应时间
Min----最小的响应时间
Max----最大的响应时间
Error%----错误率=错误的请求的数量/请求的总数
Throughput----吞吐量即表示每秒完成的请求数
Received KB/sec----每秒从服务器端接收到的数据量
Sent KB/sec----每秒从客户端发送的请求的数量
运行测试:保存测试计划并点击运行按钮,JMeter将开始模拟用户行为并发送请求。您可以监视运行时的结果和性能指标。
先酱紫有时间写
分析测试结果:当测试完成后,您可以查看并分析测试结果报告。JMeter提供了丰富的图表和数据表格,用于评估应用程序的性能和稳定性。
先酱紫有时间写