使用非GUI模式,即命令行模式运行JMeter测试脚本,这样能够大大缩减所需要的系统资源。
命令需要在jmeter的bin目录下执行
命令:jmeter -n -t <testplan filename> -l <listener filename>
如:jmeter -n -t testplan.jmx -l log.jtl
停止运行:ctrl+c 停止后台运行:ctrl+z
解释:
- -h帮助 → 打印出有用的信息并退出
- -n非GUI模式 → 在非GUI模式下运行Jmeter
- -t测试文件 → 要运行的JMeter测试脚本文件
- -l日志文件 → 记录结果的文件
- -r远程执行 → 启动远程服务
- -H代理主机 → 设置JMeter使用的代理主机
- -P代理端口 → 设置JMeter使用的代理主机的端口号
如:jmeter -n -t test1.jmx -l logfile1.jtl -H 192.168.1.1 -P 8080
服务器非GUI模式(分布式测试):jmeter -server -H 192.168.1.1 -P 8080
备注
1、执行命令前要检查当前目录是否是%Jmeter_Home%\bin目录,如果不是,需要指定完整的路径;如果要把执行的结果保存在其他地方也要指定完整的路径。
2、执行结果可以使用GUI模式下的聚合报告查看。打开Jmeter GUI界面 →测试计划 →添加线程组 →添加聚合报告 →点击“所有数据写入一个文件”下的“浏览”,找到之前生成的.jtl文件即可。
3、命令行实时查看运行结果,需修改jmeter.properties,打开以下内容:
summariser.name=summary
summariser.interval=30 //这个表示统计频率
summariser.out=true //是否将统计结果输出到控制台
4、使用编辑器直接打开jtl文件
名词解释:
属性 | 内容 |
httpSample | 取样节点名字 |
t | 用时(ms) |
lt | 延时(ms)-不是所有的取样器支持这个 |
ts | 时间标志 |
s | 是否成功 |
lb | 标签 |
rc | 响应代码 |
rm | 响应消息 |
tn | 线程名 |
dt | 数据类型 |
by | 字节数 |
de | 数据编码 |
ng | 在这个线程组中活跃的线程数 |
na | 所有线程组中的活跃线程数 |