什么是 CLI 模式
CLI = Common Line,命令行模式,我们常说的 NON GUI 模式,无界面模式
真正做负载测试时,应该使用 CLI 模式运行,而不是 GUI;而我们通常使用bat或者jar包打开来运行脚本的方式叫做GUI的方式
启动 Jmeter GUI 时的提示
使用 jmeter.bat 运行时会有一个 cmd 窗口
CLI命令示例:
参数说明:
-n 指定 JMeter 将在 cli 模式下运行
-t 包含测试计划的 jmx 文件名称
-l 记录测试结果的 jtl 文件名称
-j 记录 Jmeter 运行日志的文件名称
-g 输出报告文件( .csv 文件)
-e 生成 html 格式的测试报表
-o 生成测试报表的文件夹 / 文件夹不存在或为空
-H 代理服务器的 host 或 ip
-P 代理服务器的 port
-r 指定所有远程服务器中运行测试
-R 在指定的远程服务器中运行测试
-X 服务器运行完脚本后自动停止 jmeter-server
Java 和JMeter 属性可以通过以下命令进行覆盖修改,而不用手动修改 jmeter.properties
-D[prop_name]=[value] 定义一个 Java 系统属性值
-J[prop_name]=[value] 定义本地 JMeter 属性
-G[prop_name]=[value] 定义要发送到所有远程服务器的 JMeter 属性
-G[propertyfile] 定义一个包含 JMeter 属性的文件,该文件将发送到所有远程服务器
-L[category]=[priority] 覆盖日志记录设置,将特定类别设置为给定的优先级 /设置根日志记录级别
示例1:
示例2:
示例3:
jmeter -n -t ./…/script/test.jmx -l ./…/jtl_result/20210301_001.jtl -e -o ./…/html_result/ -r
示例4:
jmeter -n -t ./…/script/test.jmx -l ./…/jtl_result/20210301_001.jtl -e -o ./…/html_result/ -R 127.0.0.1:8881
特别说明:
使用-R 指定远程从机时,会覆盖原有jmeter配置文件中的remote_hosts 中的配置
示例5:
jmeter -n -t ./…/script/test.jmx -l ./…/jtl_result/20210301_001.jtl -e -o ./…/html_result/ -X