模式
JMeter
运行模式有两种:一种是UI图形, 另一种是命令模式运行也就是非GUI模式
GUI
: Jmeter可视化界面及监听器展示结果需要消耗负载资源, 从而导致在大并发的情况下GUI方式负载机资源紧张, 对性能造成影响
非GUI
: 命令模式运行可以将实时的log文件和测试结果保存到本地, 路径可自定义, 不会占用太多机器的资源, 可以长时间运行
非GUI模式优点
1、节约系统资源,无需启动界面
2、便捷快速:仅需启动命令行,输入命令便可执行
3、易于持续集成:可通过shell脚本命令执行
非GUI运行命令
其实在打开Jmeter的dos控制台有提示的, 如下图:
不要将GUI模式用于负载测试,只用于测试创建和测试调试
负载测试,使用CLI模式(非GUI)
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
# jmx file: Jmeter脚本路径
# results file: 测试结果的保存文件,保存为jtl格式
# Path to web report folder: web测试报表文件路径
非GUI运行参数
-h 帮助 -> 打印出有用的信息并退出
-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
-t 测试文件 -> 要运行的 JMeter 测试脚本文件
-l 结果文件路径 -> 记录结果的文件,路径不存在时会自动创建格式为jtl或csv
-r 远程执行 -> 在Jmter.properties文件中指定的所有远程服务器
-R 远程执行 -> 执行指定的服务器
-j 指定执行日志路径 -> 路径不存在时不会自动创建
-e 设置测试完成后生成测试报表
-g CSV结果文件 --> 指定测试执行结果文件路径,仅用于生成测试报表
-o 报表文件夹路径 --> 执行测试报表生成文件夹,文件夹必须为空或者不存在
-H 代理主机IP -> 设置 JMeter 使用的代理主机
-P 代理端口号 -> 设置 JMeter 使用的代理主机的端口号
运行实例
jmeter -n -t \Script\test.jmx -l \Script\report\result.jtl -e -o \Script\report -j \Script\log\jmx.log
-n:非GUI模式运行jmeter
-t:脚本文件路径:\Script\test.jmx
-l:测试结果文件路径:\Script\report\result.jtl
-e -o:测试完成后生成测试报表, 报表路径:\Script\report
-j:执行日志路径:\Script\log\jmx.log