1、准备
测试之前需要先准备相关的工具,JMeter是运行在jdk下的一款压测工具,所以,要运行JMeter首选要安装jdk并配置环境变量,具体请自行百度jdk环境变量安装;
2、JMeter 是什么
Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试;
3、下载
在浏览器输入地址:https://jmeter.apache.org/
点击 Download Releases 进入下载页面
进入下载页面后,点击 pgp apache-jmeter-5.4.1.zip 进行下载
到这里, jmeter 就已经下载好了;
4、使用
下载好jmeter之后 ,因为下载的是压缩包,所以需要先解压才能使用,解压后进入bin目录,mac系统双击jmeter,windows系统双击jmeter.bat,
打开后如图
5、设置中文
在次之前,我们需要先将语言设置为中文,方便我们看结果,jmeter的国际化做的特别好,支持多国语言,其中就有中文,对于像博主这样英语不好的人,简直就是一大福利啊;在最上面点击 Options → Choose Language → Chinese(simplified)
6、新建测试线程组
首先,在 Test Plan(测试计划)上右击 → 添加 → 线程(用户) → 线程组
新建好线程组之后, 有些东西需要配置一下,这里我们起10000个线程,每个线程执行一次
7、新建Http请求
在线程组上右击 → 添加 → 取样器 → Http请求
配置访问请求路径:http://localhost:8080/order
8、新建聚合报告
在 Http请求 上右击 → 添加 → 监听器 → 聚合报告
聚合报告分析说明
样本: 本次测试场景共运行多少线程;
平均值: 平均响应时间;
中位数: 统计意义上的响应时间中值;
90% 百分位:所有线程中90%的线程响应时间都小于xx的值;
最小值: 响应最小时间;
最大值: 响应最大时间;
异常 % : 出错率;
吞吐量: 每秒完成的请求数,(和并发量的区别是:并发量=每秒同时处理的请求数量)
9、新建察看结果树
在 Http请求 上右击 → 添加 → 监听器 → 察看结果树
结果树可以查看每个请求的所有信息,包含请求头、响应头、以及参数和响应信息等;
10、开始压力测试
测试前需要做一些准备, 先切换到线程组页面,在清理上次的测试痕迹,最后才点击启动按钮
测试完成后我们看一下聚合报告的结果
在察看结果树中可以看到所有的请求,请求成功显示绿色,如果请求失败的话显示的就是红色
完
如果是正规互联网公司的话,上线之前都是需要提供压力测试报告的,这个主要由开发人员提供,那我们就可以使用jmeter来进行压力测试,并配合java的jconsole工具配合一起使用,jconsole可以看到实时的堆栈内存使用情况,cpu使用量,另外,压力测试报告网上有很多模板,感兴趣的同学可以自行下载查看