性能测试工具中,LoadRunner和JMeter分别是商业软件和开源软件中比较知名的,LoadRunner使用是需要付费的,国内使用LoadRunne的企业应该有不少都是用的和谐版,我做性能专项测试开始也是用的LoadRunner,突然有一天公司为了避免法律诉讼风险要求所有的性能测试全部转向使用JMeter,给了我们一个版本周期的时间要求把所有已有的性能测试用例全部使用JMeter进行重新录制,在已经非常熟悉LoadRunner的情况下转向JMeter是非常痛苦的,因为刚开始完全无法适应JMeter的那一套使用方式,公司的强制推动让我们最终成功转向了使用JMeter来开展性能测试,同时我也发现JMeter其实挺好用的,目前已经成为各公司主力选择的性能测试工具了。
JMeter能支持的场景非常广泛,很多公司用它来开展接口的自动化测试,我们来看看官方列出JMeter能支持的应用/服务/协议:
Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
SOAP REST Webservices
FTP
Database via JDBC
LDAP
Message-oriented middleware (MOM) via JMS
Mail - SMTP(S), POP3(S) and IMAP(S)
Native commands or shell scripts
TCP
Java Objects
更重要的是JMeter是开源的,它可以使用插件来扩展自己所需的功能,不仅可以自己写插件,可以直接从插件管理中下载各种所需的插件来适配所需的场景。
工欲善其事必先利其器,接下来我们先一步步来完成JMeter环境的搭建,JMeter是纯Java语言开发的,因此使用JMeter依赖JDK,并且JMeter是跨平台在Windows、Linux、MAC下都可以使用。
下载JMeter
通过官网下载链接
https://jmeter.apache.org/download_jmeter.cgi进入下载页面,以最新的5.4.1版本为例
如果使用Windows系统下载文件apache-jmeter-5.4.1.zip,下载完毕后解压到任意目录即可。
如果使用Linux系统下载文件apache-jmeter-5.4.1.tgz,cd到文件下载目录执行解压命令。
cd home
tar -zxvf apache-jmeter-5.4.1.tgz
安装JDK
JMeter只需要下载解压即可,无需安装步骤,如果系统已经安装了JDK1.8及以上版本,JMeter环境就搭建好了,如果还未安装JDK,接下来还需要最后一步就是下载并安装JDK,这里以JDK11版本为例
Windows系统下JDK的安装
清华镜像站下载链接
https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/11/jdk/x64/windows/,下载msi格式文件
双击进行安装,选择默认选项一路下一步直到安装完成
新打开一个cmd窗口,执行java -version命令如果显示下面的java版本信息则表示jdk安装成功
Linux系统下JDK的安装
清华镜像站下载链接
https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/11/jdk/x64/linux/,下载下图标注的文件(如果在windows下下载,需使用sftp工具上传到linux系统指定目录)
cd到下载文件所在的路径并解压
cd home
tar -zxvf OpenJDK11U-jdk_x64_linux_hotspot_11.0.13_8.tar.gz
切换到root用户,vi命令打开/etc/profile文件
vi etc/profile
在文件的末尾添加如下内容,设置JAVA_HOME环境变量,注意JAVA_HOME以实际解压的路径为准
export JAVA_HOME=/home/jdk-11.0.13+8
export PATH=$PATH:$JAVA_HOME/bin
执行如下命令使环境变量生效
source /etc/profile
执行java -version查看java版本信息,如果正确显示则表示JDK安装成功
注意:在root如下查看java -version返回了正确的版本信息,但是退回到非root用户下如果遇到java -version命令返回无法识别java命令,可以尝试关闭ssh连接,重新连接服务器试试
启动JMeter
Windows系统下启动JMeter,执行JMeter解压文件bin目录中的jmeterw.cmd
弹出如下JMeter窗口界面,则表示JMeter可以正常使用了
Linux系统常作为服务器使用,是无界面的,JMeter可以无界面运行,后续介绍其使用方法时会详细讲解,cd到JMeter解压后的bin目录下,执行./jmeter -v如果显示如下信息则表示JMeter可以正常使用