JMeter CLI模式
什么是 CLI 模式
- CLI = Command Line,命令行模式,我们常说的 NON GUI 模式,无界面模式
- 真正做负载测试时,应该使用 CLI 模式运行,而不是 GUI
**官方提示:**负载测试不要用 GUI 模式,GUI模式仅用于创建测试计划和调试脚本
CLI 模式可选参数
字段 | 含义 |
---|---|
-n | 指定 JMeter 将在 cli 模式下运行 |
-t | 包含测试计划的 jmx 文件名称 |
-l | 记录测试结果的 jtl 文件名称 |
-j | 记录 Jmeter 运行日志的文件名称 |
-g | 输出报告文件( .csv 文件) |
-e | 生成 html 格式的测试报表 |
-o | 生成测试报表的文件夹/文件夹不存在或为空 |
服务器相关参数
字段 | 含义 |
---|---|
-r | 指定所有远程服务器中运行测试 |
-R | 在指定的远程服务器中运行测试 |
-X | 服务器运行完脚本后自动停止 jmeter-server(用的少) |
常用命令
本地执行脚本生成jtl报告
jmeter -n -t test_tb_upload.jmx -l result/report.jtl
执行 test_tb_upload.jmx 脚本,并在 result 目录下生成 report.jtl 报告,report.jtl 存在也没关系,可以自动覆盖
jtl报告生成HTML报告
jmeter -g report.jtl -o report
将 .jtl 文件转换为 .html 文件,并保存到 report 文件夹中。
本地执行脚本生成jtl报告同时转换成HTML报告
jmeter -n -t test_tb_upload.jmx -l result/report.jtl -e -o report
执行 test_tb_upload…jmx 脚本,在 result 目录下生成 report.jtl 报告,最后在 report 目录下生成测试报表,将例子一、二综合在一起。
切记: report.jtl 必须不存在, report 目录必须不存在或者为空
控制所有Slave执行脚本
jmeter -n -t test_tb_upload.jmx -l result/report.jtl -r
启动所有远程 slave 机执行 FlaskDemo.jmx ,并在 result 目录下生成 report.jtl
会执行 jmeter.properties 的 remote_hosts 填的所有远程 slave 机。
控制指定Slave执行脚本
jmeter -n -t test_tb_upload.jmx -l result/report.jtl -R 127.0.0.0:1099