JMETER之CLI模式

非GUI方式是没有jmeter界面的,我们在命令窗口通过命令行来运行场景,之所以要非gui方式运行是因为jmeter可视化界面及监听器动态展示结果都比较消耗负载机资源,在大并发情况下GUI方式往往会导致负载机资源紧张,会对性能测试结果造成影响。当然了,这个影响并不是说被测系统的性能受到影响,比如响应时间变大之类,而是影响了负载量的生成,比如非GUI方式100个线程可以产生100TPS的负载,而GUI方式只产生80TPS的负载,如果一台机器只能支持100个线程运行,那么我们只有多加机器来运行测试计划,这样一台负载机变成两台。所以推荐用非GUI的方式来运行测试计划。另外在测试执行时提醒大家关注负载机性能,可以多架设几台jmeter负载机来减轻单机负载机的压力。非GUI方式虽然不显示界面,但也会以字符形势周期性显示执行结果,对负载机的资源消耗会小一些。所以同等条件下,非GUI方式的jmeter机器能够产生的负载会比GUI方式的jmeter产生的负载大一些。

JMETER非GUI运行的命令

命令 非GUI方式运行
-n 非GUI方式运行
-t 指定运行的测试脚本的地址与名称,可以是相对路径,相对路径的根是命令窗口 的当前路径
-h 查看帮助
-v 查看版本
-p 指定读取jmeter属性文件
-l 记录测试结果到文件
-s 以服务器方式运行(就是我们说的远程方式,启动agent)
-H 设置代理,一般填写代理ip
-p 设置代理端口
-u 代理账号
-a 代理口令
-j 定义jmeter属性,等同于在jmeter.properties中进行设置
-G 定义jmeter全局属性,等同于在Glabal.properties中进行设置,线程间可以共享
-D 定义系统属性,等同于在system.properties中进行设置
-S 加载系统属性文件,可以通过此参数指定加载一个系统属性文件,此文件可以用户自己定义
-L 定义jmeter日志级别,比如DEBUG,INFO,ERROR等
-r 开启远程负载机(非GUI方式),远程机列表在jmeter.properties中指定
-R 开启远程负载机,-R 可以指定负载机ip,此选项会覆盖jmeter.properties中的remote_hosts的设置
-d 指定jmeter home 目录
-X 停止远程运行

操作步骤:

1、进入到jmeter的bin目录下,在地址栏中输入cmd,回车进入控制台
JMETER之CLI模式_第1张图片

**

2、准备好脚本,输入命令

**

D:\jmeter\apache-jmeter-5.3\bin>jmeter -n -t script\易捷支付.jmx  -l test\cli-2020071301.jtl -e -o test\resulthtml001

JMETER之CLI模式_第2张图片
需要注意的事项:

  • 输出的jtl和html所在文件夹不能为空
  • jtl和html的名称不能重复
  • 控制台中,执行命令的端口为4445,执行命令端口的范围为【4445,4455】,默认使用4445端口,如果被占用,依次往后使用其他端口。如果这10个端口都被占用,执行命令会提示错误。

3、执行结束后,生成了2个文件

JMETER之CLI模式_第3张图片

我们查看一下jtl文件
JMETER之CLI模式_第4张图片
查看下生成的html报告
下图显示测试报告的信息
JMETER之CLI模式_第5张图片
性能指标指数(满意度)和请求概要JMETER之CLI模式_第6张图片
聚合报告和错误信息JMETER之CLI模式_第7张图片
JMETER之CLI模式_第8张图片
图表JMETER之CLI模式_第9张图片

你可能感兴趣的:(jmeter,性能测试,jmeter)