Jmeter场景的运行方式(GUI运行和命令行运行)

jmeter如何运行大量不同的命令(Jmeter十五)(1)

运行方式:

GUI运行:通过图形界面方式运行,该运行方式的可视化界面及监听器动态展示 结果都比较消耗负载机资源,建议大并发时不用,一般进行脚本调试;

命令行运行:通过jmeter命令行工具运行(性能测试建议通过命令行执行脚本)

运行架构

本地运行:运行本地一台Jmeter机器,所有的请求通过该机器发送。

远程运行:用一台Jmeter控制机控制远程的多台机器来产生负载。控制机与负载 机之间通过RMI方式来完成通信。

以上运行架构可参考:文章末尾领取参考方式

jmeter的GUI运行

1、通过在jmeter的GUI上的倒三角图标运行或者通过菜单栏中的运行启动执行脚本;如下图

jmeter如何运行大量不同的命令(Jmeter十五)(2)

注意:

jmeter可视化界面及监听器动态展示 结果都比较消耗负载机资源,建议大并发时不用会对性能测试结果产生影响,一般进行测试脚本的创建和调试;

再进行性能测试的时候在启动jmeter时dos窗口也会给出提示;如下图:

意思大概为:不要使用GUI模式进行负载测试,GUI只用于Test创建和Test调试。 对于负载测试,使用CLI模式(非GUI);

jmeter如何运行大量不同的命令(Jmeter十五)(3)

jmeter命令行运行(性能测试建议通过命令行执行脚本)

jmeter命令行工具部分参数说明:-n:非GUI方式运行。-t:指定运行的测试脚本地址与名称(后缀为.jmx文件),可以是相对或绝对路径-h:查看帮助-l:记录测试结果到文件(后缀为.jtl),指定名称与路径,可以是相对或绝对路径-r:开启远程负载机,远程负载机列表在jmeter.properties文件中指定-R:开启远程负载机,可以指定负载机IP,会覆盖jmeter.properties中的设置-X:停止远程执行-J:定义Jmeter属性,等同于在jmeter.properties中设置(参考下方命令行运行实战的第6个命令详解)-G:定义Jmeter全局属性,等同于在Global.properties中设置,线程间可相互共享-e:在脚本运行结束后生成html报告-o:保存html报告的地址-g:指定已存在的测试结果文件

常用的命令如下:jmeter -n -t 脚本路径.jmx -l 测试结果路径.jtl -e -o html结果路径(空文件夹);(备注:可不写-e -o 后面的命令先生成jtl文件,再通过-g参数把jtl文件生成html报告)

jmeter如何运行大量不同的命令(Jmeter十五)(4)

注意:Jmeter使用命令行运行时间较长的时候,2小时以上,会发现jmeter命令行到时间仍然未停止,但实际上请求是没有发的(不会出现end of run),此时如果配置了网页版报告,就会不能生成(jtl报告能生成)。

那可以使用-g 命令加载 jtl 文件生成网页版报告命令:jmeter -g jtl文件路径 -o html空文件夹

jmeter如何运行大量不同的命令(Jmeter十五)(5)

jmeter命令行运行实战:

1、本地运行脚本并生成测试报告,其中测试报告的后缀名为jtljmeter -n -t 脚本路径 -l 测试报告路径

2、远程运行脚本并生成测试报告,其中测试报告的后缀名为jtljmeter -n -t 脚本路径 -r -l 测试报告路径

3、远程运行脚本并生成测试报告,其中测试报告的后缀名为jtljmeter -n -t 脚本路径 -R 负载机IP -l 测试报告路径

4、本地运行并生成网页版测试报告,其中测试结果路径为空目录jmeter -n -t 脚本路径 -l 测试报告路径 -e -o 测试结果路径

5、把jtl格式的测试结果文件转换为html格式jmeter -g 测试结果路径 -o html报告路径

6、本地运行脚本并生成测试报告,把线程数和循环次数在命令行配置jmeter -n -t 脚本路径 -l 测试结果路径 -JthreadNum=50 -JloopNum=10

要完成上述第6个实战的操作生效,也就是jmeter命令行参数 -J的用法;如下6.1 利用函数助手对话框的 P 函数设置获取命令行属性

jmeter如何运行大量不同的命令(Jmeter十五)(6)

6.2 把生成的函数通过用户定义的变量配置

6.3 把用户定义的变量放入需要使用到的地方

jmeter如何运行大量不同的命令(Jmeter十五)(7)

6.4 在命令行窗口执行的时使用-J参数;如下:

jmeter如何运行大量不同的命令(Jmeter十五)(8)

jmeter如何运行大量不同的命令(Jmeter十五)(9)

重点:学习资料600g的学习资料懂的都懂

jmeter如何运行大量不同的命令(Jmeter十五)(10)

jmeter如何运行大量不同的命令(Jmeter十五)(11)

,