本文我们一起来学习在Linux(Mac)上利用Jmeter进行性能测试并生成测试报告的方法。
环境准备
JDK
访问这个地址 【JDK11.01】,根据实际环境下载一个JDK。
Jmeter
Jmeter 5.0:https://jmeter.apache.org/download_jmeter.cgi
建议下载zip绿色版本
环境变量
因为博主使用的是dmg安装包,安装时已自动完成环境变量配置,其他linux环境可能需要手动完成,输入命令vim /etc/profile
,添加下面的内容,保存后,执行 source /etc/profile
让其生效即可 (比较懒的小伙伴可以直接用.
代替source)。
注意:下面配置中的jmeter-5.0路径要根据实际Jmeter包放置的位置进行修改。
export JAVA_HOME=/usr/java/1.8.0_181
export CLASSPATH=.:JAVA_HOME/lib/dt.jar:$JAVA_HOME.lib/tools.jar:$JRE_HOME.lib
export PATH=$PATH:$JAVA_HOME/lib
export PATH=/jmeter/apache-5.0/bin/:$PATH
export JMETER_HOME=/jmeter/jmeter-5.0
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH
运行Jmeter
权限
在Linux下执行软件脚本时,遇到的最多的可能就是权限的问题,我们可以使用ls -l
来查看文件的权限信息,比如文件最前方的-rwxr-xr-x
就表示文件所有者有读写执行的权限,文件所有者所在群组和或者其他的用户有读和执行的权限。当然我们也可以那就是查看文件的颜色来判断其权限,常见的颜色对应信息如下表,当然,这些都是可以手动设置的,所以仅作参考:
颜色 | 代表的信息 |
---|---|
白色 | 普通的文件 |
蓝色 | 目录 |
绿色 | 可执行的文件 |
红色 | 压缩文件或者包文件 |
青色 | 连接文件 |
黄色 | 设备文件 |
灰色 | 其他的文件 |
启动jmeter,
在Linux环境下切换到jmeter的bin目录执行./jmeter.sh
即可启动jmeter,比如博主的目录是:
/Users/bingo/Hebinz/apache-jmeter-5.0/bin
启动之后我们可以看到终端打印的信息:不要使用GUI模式进行负载测试,GUI只用于创建脚本以及用来debug,执行测试时建议使用非GUI模式运行。后面紧接着的就是命令行模式的命令提示。
创建脚本
这里以访问我博客首页为例:
脚本保存为test.jmx
运行脚本
输入命令 jmeter -n -t test.jmx -l test.jtl
,运行jmeter脚本。
常用命令解析:
常见命令 | 说明 |
---|---|
-h | 帮助:打印出有用的信息并退出 |
-n | 非 GUI 模式:在非 GUI 模式下运行 JMeter |
-t | 测试文件:要运行的 JMeter 测试脚本文件 |
-l | 日志文件:记录结果的文件 |
-r | 远程执行:启动远程服务 |
-H | 代理主机:设置 JMeter 使用的代理主机 |
-P | 代理端口:设置 JMeter 使用的代理主机的端口号 |
运行结果如下图:
由于我只运行了一次,所以只有一轮结果。
查看测试报告
打开聚合报告
然后打开刚才的文件就可以了
生成HTML报告
参考命令:
jmeter -n -t test.jmx -l test.csv -e -o htmlResult
会在当前目录生成一个test.csv文件结果和存储html报告的文件夹htmlResult,浏览器打开文件夹里面的index.html就能看到html报告了。
HTML报告详情的话可以参考我另外一个博客: 【Jmeter】 Report Dashboard 生成html图形测试报告