Jmeter 命令行(非GUI模式)执行详解

如题所述

第1个回答  2022-06-12
背景说明:
JMeter执行方式有两种,一种是GUI模式,一种是非GUI模式。
GUI模式就是界面模式,非GUI模式就是命令行模式。GUI模式主要用来编写和调试脚本用的,接口的性能测试最好是采用命令行模式,因为该模式可以和其它框架进行对接,进行自动化测试平台的集成。

非GUI模式适用场景:
1、更省资源,更容易实现多工具集整合;
2、当访问的接口服务需要通过代理服务器才能完成的;
3、当一台机器产生的压力不够时,采用分布式多机远程执行模式,使得一台主控机可以控制多台压力机,同时生成更多的压力请求,达到客户端能模拟大并发请求的目的;
4、可以通过外部传参,让命令行将数据传入到脚本中,使得外部系统调用jmeter时候能更好的进行集成和传参,比如通过jenkins启动和执行接口自动化时,将参数从jenkins的界面传入到jmeter中,就是通过命令行参数进行桥接的。

优点:
1、节约系统资源,无需启动界面
2、便捷快速:仅需启动命令行,输入命令便可执行
3、易于持续集成:可通过shell脚本命令执行

参数详解:
-h 帮助 -> 打印出有用的信息并退出
-n 非 GUI 模式 -> 在非 GUI 模式下运行 JMeter
-t 测试文件 -> 要运行的 JMeter 测试脚本文件
-J 是设置本地jmeter属性,引用变量参数
-G 是设置server的jmeter属性
-l 日志文件 -> 记录结果的文件
-r 远程执行 -> 在Jmter.properties文件中指定的所有远程服务器
-H 代理主机 -> 设置 JMeter 使用的代理主机
-P 代理端口 -> 设置 JMeter 使用的代理主机的端口号

使用方法详解:
前提:为了方便管理,在jmeter的安装目录bin下创建一个文件夹testscript用来存放脚本(.jmx文件),再创建一个文件夹testresult用来存放脚本执行后的结果文件。
一、使用JMeter非GUI模式
1、将要测试的jmeter脚本放到testscript目录下
2、cmd打开命令行模式
3、进入到Jmeter安装目录下的bin目录下
4、执行命令:jmeter -n -t examples\testscript\apd_v3.7_perf.jmx -l examples\testresult\apd3.7-reslut.jtl -j report\01-log.log
可以看到以下信息

summary+ 是开始这个时点的报告。
summary= 是总结它之前的报告,呈现出的是当前时点之前总的情况,通常是均值。
最后一个summary=是本次压测总的情况,如果脚本按时正常结束的话,最后一次summary里面的值应该和你从GUI打开聚合报告或概括报告的值一致。

二、无界面分布式压测
当并发量过大单机无法承担需要做分布式压测
执行方法:
1、把脚本和参数文件存放到各台终端相同目录下
2、将每台终端的jmerter-server.bat打开等待主机发号施令
3、在主机命令窗口键入类似以下命令:
jmeter.bat -n -t testscript/Baidu.jmx -R 192.168.182.129:1100,192.168.182.130:1200 -l testresult/01-result.jtl -j report\01-log.log

命令中-R代表远程 remote ,后面跟随的是每台终端机jmeter-server窗口显示的 ip 和端口,同样,多台终端之间由逗号隔开,其他都与单机命令一样。于是可以看到各台终端机的jmeter-server窗口有关运行和阶段性summary的信息直至运行结束。总体的报告都在你主机保存的那个.jtl文件里。

如何使用非GUI模式运行JMeter(命令行模式)
执行非GUI模式的JMeter步骤如下: 确定执行路径:确保当前目录位于JMeter安装目录的bin文件夹下。 执行命令:使用如下的命令格式启动JMeter: jmeter -n -t [testplan jmx file] -l [results file] -e -o [Path to web report folder]其中,-n表示非GUI模式,-t指定测试计划文件,-l指定...

Jmeter 命令行(非GUI模式)执行详解
一、使用JMeter非GUI模式 1、将要测试的jmeter脚本放到testscript目录下 2、cmd打开命令行模式 3、进入到Jmeter安装目录下的bin目录下 4、执行命令:jmeter -n -t examples\\testscript\\apd_v3.7_perf.jmx -l examples\\testresult\\apd3.7-reslut.jtl -j report\\01-log.log 可以看到以下信息 summar...

JMeter 非 GUI 模式运行
真正在跑场景的时候,我们并不会在界面模式下运行测试脚本,而是使用命令行模式即非 GUI 模式运行 JMeter 测试脚本。这种模式能够大大缩减 JMeter 本身消耗的系统资源,也非常便于执行,不需要启动界面,只需要在命令行输入命令即可。另外,到后期如果要实现持续集成,可通过 shell 脚本命令执行。下面我们来学...

jmeter在非gui模式下,怎么将多个http请求放在一个事务里面
在非GUI模式下使用JMeter进行测试时,若需将多个HTTP请求放置于一个事务中,可以借助事务控制器(Transaction Controller)实现。具体操作如下:首先,打开JMeter,创建一个新的测试计划或在现有的测试计划中添加事务控制器。接着,在事务控制器中添加你需要的HTTP请求,如URL、HTTP方法、请求参数等。确保每个...

图文详解压力测试工具JMeter的安装与使用
本文将详细介绍压力测试工具JMeter的安装与使用步骤,确保你理解如何在CLI模式下进行高效负载测试。首先,启动JMeter GUI时,注意CMD窗口的提示,明确指出GUI模式不适合进行负载测试,而应选择非GUI(CLI)模式,执行命令如下:jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report...

jmeter如何生成html测试报告?
命令解释:-n:非GUI模式执行JMeter。-t:测试计划保存的路径及文件名(.jmx文件格式)。-l:保存生成测试结果的文件(结果格式为jtl)。-e:测试结束后生成测试报告。-o:存放生成测试报告的路径。请确保在执行命令前,`report`和`results.jtl`文件不存在,否则执行时可能会报错。生成后的测试报告包括...

Jmeter遇到的问题及解决办法
- 注意:如果`user.properties`文件中有`jmeter.save.saveservice.output_format=xml`属性,删除它。确保使用正确的命令来生成HTML报告。6. 非GUI模式生成的.jtl报告在JMeter可视化界面中可能显示“No data to display”,解决方法包括:- 在`user.properties`文件中添加以下行:```jmeter.save.saveservice...

如何启动非GUI的JMeter
cmd里面输入楼上给的命令行就ok,bin目录下的jmeter程序

jmeter gui运行和非gui运行的区别吗
区别大了。gui:界面会消耗很多资源,并且运行的结果是保存在Jmeter运行的内存中。当时间一长,内存增长到一定程度,就会报错,甚至假死。非gui:实时的将运行log文件保存到本地文件中,不会撑爆内存。并且对机器的资源占用也较少。

Jmeter遇到的问题及解决办法
6. 非GUI模式生成的 .jtl 报告在Jmeter可视化界面结果树打开Request 为No data to display,Response data为空解决办法:(1)jmeter\/bin\/user.properties下添加如下命令行:jmeter.save.saveservice.response_data=true jmeter.save.saveservice.samplerData=true jmeter.save.saveservice.requestHeaders=...

相似回答
大家正在搜