前言
压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步骤,下面我带大家来使用一款压力测试工具JMeter
。
一、关于Jmeter
JMeter
是Apache
组织开发的基于Java的压力测试工具,用于对软件做压力测试,所以在使用之前需要先安装Java环境。
官网下载:http://jmeter.apache.org/download_jmeter.cgi
二、Java环境
JDK8下载地址:https://www.oracle.com/java/technologies/downloads/#java8-windows
安装下载好的JDK,第一次会安装jdk,第二次会安装jre,所以我们提前创建好文件夹:
2.1 环境变量
JAVA_HOME
E:\jmeter\jdk
==========================
Path → %JAVA_HOME%\bin
Path → %JAVA_HOME%\jre\bin
此时可以CMD
中输入 java -version
来检验是否安装成功。
三、准备工作
解压下载的二进制包,进入bin目录,使用jmeter.bat
启动程序,或者可以添加到环境变量,直接使用CMD
启动JMeter
。
3.1 CMD窗口的提示信息
这里额外提一下,启动之后会有两个窗口,一个CMD
窗口,一个JMeter的 GUI。不要忽略CMD
窗口的提示信息:
================================================================================
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运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI,使用下面的命令来执行测试:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
这里是考虑到在测试时响应GUI会造成一定的延迟,所以在重要测试时一定要使用CMD
执行测试。
3.2 更改语言为中文
官方默认为我们提供了简体中文。通过 【Options】->【Choose Language】变更为简体中文
不过有个问题,这个中文设置只是在此次使用生效,关闭了再次打开又会变回英文。
解决方法:打开JMeter
所在文件夹,在bin
目录中找到 jmeter.properties
,用notepad++
打开,找到这一行:
将 en
改为 zh-CH
并且去掉注释符#
即可。
四、创建测试
4.1 创建线程组
在“测试计划”上右键 【添加】–>【Threads(Users)】–>【线程组】。
设置线程数和循环次数。我这里设置线程数为300,循环10次。
4.2 配置元件
在我们刚刚创建的线程组上右键 【添加】–>【配置元件】–>【HTTP请求默认值】。
配置我们需要进行测试的程序协议、地址和端口。
此处配置之后,在当前组内host都一样时,HTTP请求中host即可留空,当host变更时,只需要更改该元件即可。
4.3 构造HTTP请求
在“线程组”右键 【添加-】->【取样器】–>【HTTP 请求】设置我们需要测试的API的请求路径和数据。我这里是用的json
4.4 添加HTTP请求头
在我们刚刚创建的线程组上右键 【添加】–>【配置元件】–>【HTTP信息头管理器】。
因为我要传输的数据为json
,所以设置一个 Content-Type:application/json
拓展:后续我们用到token时也可以在此添加,可以用到JSON提取来进行方便快捷的提取登录成功的token。如下图所示:
4.5 添加断言
在我们刚刚创建的线程组上右键 【添加】–>【断言】–>【响应断言】。
根据响应的数据来判断请求是否正常。我在这里只判断的响应代码是否为200。还可以配置错误信息
4.6 添加查看结果树
在我们刚刚创建的线程组上右键 【添加】–>【监听器】–>【察看结果树】。
直接添加,然后点击运行按钮就可以看到结果了。
除了查看结果树,更多的结果查看可以在【添加】–>【监听器】中添加
4.7 保存测试计划
要记得及时保存测试计划,以免丢失。文章来源:https://www.toymoban.com/news/detail-851872.html
总结
总的来说,JMeter是一款功能强大的压测软件,合理利用它可以为我们省去更多时间,提高工作效率。文章来源地址https://www.toymoban.com/news/detail-851872.html
到了这里,关于【Jmeter】压力测试新手入门教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!