JMeter的简单使用
本文介绍
通过简单的创建一个HTTP测试案例,介绍JMeter的简单使用
JMeter测试工具介绍
The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions.
Apache JMeter 是一个开源的应用软件,一个100%纯Java应用程序,用于加载测试功能行为和测量性能,他最初是味了测试Web应用程序而设计的,但后来扩展到了其他的测试功能。
JMeter的安装
- 在Apache-JMeter官网下载相关的文件
- 将文件解压到本地
官网下载对应压缩包
注意根据下载的版本安装需要的JDK版本,文中使用的5.3的版本需要JDK8
解压后的文件apache-jmeter-5.3bin目录

启动JMeter
windows运行jmeter.bat linux运行 jmeter.sh
根据运行环境运行相应的命令,本文使用windows环境,因此在命令行界面中,运行jmeter.bat启动,启动成功的界面(命令行和GUI的界面)

JMeter的使用
命令行和GUI
命令行介绍
==============================================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use CLI Mode (was NON GUI):
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
& increase Java Heap to meet your test requirements:
Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file
Check : https://jmeter.apache.org/usermanual/best-practices.html
==============================================================================
不要使用GUI模式运行测试,只能用来创建测试案例和测试的Debug.如果要进行性能测试,使用命令行模式。并给了命令行测试的命令:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
在你的JMeter批处理文件中增大你当前环境的Java堆需要使用:
-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m
GUI介绍
整体分区

菜单介绍

功能栏介绍
菜单栏中分为:JMeter文件的编辑,JMeter的运行、JMeter的查找

生成JMeter测试报告
到目前为止,介绍了JMeter的工具,暂未涉及到测试案例编写吗,在下一个小节介绍JMeter的案例编写。
先看一下测试案例生成的报告是什么样子,及怎么生成测试报告

正常的报告会像上方的图例,整个测试案例的运行结果,包括请求数、响应时间等等。
注意图中的红色选中部分,是生成测试案列报告的源文件,如果没有该文件则无法生成该报告
源文件从哪里来,来自用户在命令行运行JMeter命令后生成的文件
生成报告命令
jmeter -n -t ../test/order.jmx  -l ../test/order.txt  -e  -o ../test/webreport
参数说明
-n, --nongui run JMeter in nongui mode
无GUI模式运行
-t --testfile <argument>the jmeter test(.jmx) file to run. "-t LAST" will load last used file
指定JMeter测试案例文件,文件后缀后.jmx
-l, --logfile <argument> the file to log samples to
指定测试案例的日志文件保存
-e, --report atendofloadtests generate report dashboard after load test
负责报告后生成报告仪表板,也就是报告网页
-o, --report outputfolder <argument> output folder for report dashboard
报告的输出文件目录位置
命令拆析
-n -t ../test/order.jmx
在当前JMeter的bin文件的上一个文件路径创建一个test文件夹,运行一个名为order.jmx的测试案例
-l ../test/order.txt
在当前JMeter的bin文件的上一个文件路径创建一个test文件夹,报告内容保存在order.txt文件中
-e -o ../test/webreport
在当前JMeter的bin文件的上一个文件路径创建一个test文件夹的webreport文件夹,保存网页版报告

生成报告注意事项
如果要生成网页版本的报告,必须要生成测试案例运行结果(-l /xx/xx.txt),否则无法生成网页报告,因为网页报告的表格数据是基于测试案例中数据来的


基于HTTP的JMeter的测试案例
为了方便查看,我们将GUI工具设置为中文
性能测试无非就是测试程序的健壮性,在前后端分离的开发场景下,测试后台的请求能够经得起多少的请求,我们模拟一下多请求同时发起的情况,比如说我们查询案例中的订单列表。
请求按照步骤创建下方的案例
创建一个线程组
右键案例创建一个线程组

设置线程组的属性信息(根据具体业务场景设置对应的参数):
设置线程数为10个,
循环次数为一次

在线程组中添加Http请求
因为我们在线程组中运行Http请求,所以我们右键线程组添加Http请求

设置Http请求参数,请求协议Http,请求地址、请求端口、请求URl,请求编码格式
添加查看HTTP响应
察看结果树主要用来实在我们运行线程组后,查看http请求的详细运行情况

运行线程组查看结果树

Http请求的响应信息:
HTTP请求案例简单总结
一个简单的Http测试案例,大概分为设置请求组(线程组),设置请求地址(HTTP请求),设置请求结果查看器(察看结果树),可以根据自己的具体业务情况,设置对应的参数。
一些配置说明
在配置原件中,我们可以配置默认请求参数,比如公共请求Http请求配置(HTTP请求默认值)、session、cookie、http的Request Header等等

请求消息头

HTTP请求默认值

HTTP Cookie

当然还有其他的 逻辑控制器、前置后置处理器、定时器、监听器等等,
记住一定将你的测试案例保存起来,否则下一次打开就要重新编辑。
不要在GUI运行测试案例
通过创建测试案例,我们成功了保存了一个XXX.jmx的文件,官方强调在GUI中创建和我们调试测试案例,实际意义上的性能测试我们通过命令行运行,或保存每一次运行的结果到一个文件中,或生成一个网页报告。
命令行的运行截图如下:

搭配Dubbo官方性能测试报告
文档引用
-End-
微信:Java编码日志

 
                    
                     
                    
                 
                    
                


 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号