Jmeter非GUI模式

1. 非GUI模式说明

我们在启动JMeter时,一直会有一个黑色命令行窗口,如下:

Description

窗口中的意思就是:

  • 不要将GUI模式用于负载测试!仅用于测试创建和测试调试
  • 对于负载测试,使用CLI模式
  启动方式:jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
  • 可以增加Java虚拟机的堆空间

    在bin目录下找到jmeter.bat文件

    Description

  用记事本打开,找到HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" ,256改为1024

注意:在做负载测试时,Java Heap内存空间,调整的大一些,可以避免因Java堆内存不足,而终止测试的情况

2. 为什么使用非GUI模式?

  • 图形化界面消耗更多资源,如CPU和内存,容易使压力机达到瓶颈,从而影响测试结果
  • 图形化界面不支持大型的负载测试和性能测试,并发较大时,jmeter会崩溃
  • 命令行方式可以把脚本配置到Jenkins上实现持续集成,做成自动化测试

3. 命令运行Jmeter脚本

3.1 命令参数说明

  jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]

参数说明:

  • -n:表示非图形化模式

  • -t:执行jmx脚本路径,也就是我们需要测试的jmx脚本文件

  • -l:后跟输出结果文件路径和结果文件名称

    • 若指定路径下没有指定名称的脚本,则自动创建,可以生成csv或者jtl文件
    • 若只写脚本名称,则默认是在当前目录查找或创建
  • -e:设置生成测试报表

  • -o:保存测试报表文件夹的路径,该文件夹必须为空或不存在

3.2 运行命令

1.在D:\jmeter\apache-jmeter-5.2.1\bin目录下创建test文件夹,并在test文件夹中创建test_report文件夹用于存放测试报表

Description

2.把待测试的jmx脚本放至test文件夹中

Description

3.打开bin目录下的test文件夹,输入cmd,打开命令窗口,输入命令:

  jmeter -n -t testing.jmx -l test.jtl -e -o D:\jmeter\apache-jmeter-5.2.1\bin\test\test\_report

Description

注意:JMeter 默认去当前目录寻找脚本文件,并把日志记录在当前目录

比如你在 D:\jmeter\apache-jmeter-5.2.1\bin\test 目录下执行以上命令,JMeter 会去该目录下寻找 testing.jmx 脚本并把执行结果放在该目录

如果你的脚本在其他目录,而且想要把执行结果放在另外文件夹,需要使用绝对路径告诉 JMeter,比如:

  D:\jmeter\apache-jmeter-5.2.1\bin\test>jmeter -n -t C:\Users\Administrator\Desktop\testing.jmx -l C:\Users\Administrator\Desktop\test.jtl -e -o C:\Users\Administrator\Desktop\test\_report

4.查看运行结果

Description
Description

### GUI模式JMeter配置教程 在图形界面(Non-GUI Mode)环境中运行 Apache JMeter 是一种高效的方式,尤其适用于执行大规模性能测试脚本。以下是关于如何设置和配置 JMeter 的相关内容。 #### 设置 Job Configuration 为了使 JMeter 能够正常工作于命令行环境,需确保其作业配置文件中包含了必要的架构信息以及数据源定义。例如,在某些情况下可能需要指定 MySQL 数据库连接池的数据源类名 `com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource`[^2]。这一步骤通常涉及编辑 JMeter 属性文件 (`jmeter.properties`) 或者通过命令行参数传递这些值。 #### 启动 Non-GUI 模式的具体方法 启动无头 (headless) 版本的 JMeter 测试计划可以通过如下方式实现: ```bash jmeter -n -t /path/to/testplan.jmx -l /path/to/results.csv ``` 其中: - `-n`: 表明以 GUI 方式运行; - `-t`: 定义要加载并执行的具体测试计划路径; - `-l`: 设定结果日志保存位置。 此过程假设已经存在一个预先构建好的 `.jmx` 文件作为输入依据[^1]。 #### 关于逻辑控制器的选择 当设计复杂的采样器结构时可以考虑使用 **Simple Logic Controller**, 这种类型的控制单元虽然功能简单仅限存储用途,但在特定场景下仍然常有用[^4]. 如果遇到任何框架集成方面的问题比如 Spring,则建议寻求社区支持如官方论坛链接所示[^3]. #### 示例代码片段展示基本调用形式 下面给出一段简单的 shell script 来自动化上述流程: ```sh #!/bin/bash JMETER_HOME="/opt/apache-jmeter" TEST_PLAN="example_test_plan.jmx" RESULTS_FILE="test_results.csv" ${JMETER_HOME}/bin/jmeter \ -n \ -t "${TEST_PLAN}" \ -l "${RESULTS_FILE}" ``` 以上脚本实现了自动化的交互式操作,并可进一步扩展满足更多需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值