首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JMeter体系原理(一): 运行流程和命令行参数

本文系《JMeter文档通读》系列内容

通常人们对概念部分并不感兴趣,更喜欢直接上手操作,通过对工具的实际体验来摸索出用法。

但是扎实的基础、清楚的概念脉络,才能够让我们在遇到困难时更快速地找到正确的方法。本章对 JMeter 的体系结构进行系统的梳理

1. JMeter 的运行流程

如上一章节所言,调试好测试脚本后,通常使用命令行的方式直接执行。

那么,JMeter 是如何执行的呢?

通过阅读文档,试验观测等方式,梳理出 JMeter 运行流程的几个步骤:

解析命令行参数

加载配置文件

加载.jmx文件

启动线程组

执行采样器、控制器等元件

结束

如果熟练掌握 JMeter 各样参数、配置、jmx 文件的结构、线程的基本概念、各种元件功能,才是真正的掌握 JMeter。

不仅仅是录制用例,或手动创建用例,更是可以调试、优化、改进用例,解决实际业务中的难题

所以, JMeter 运行的流程也是深入了解 JMeter 的路线,

接下来,我们先从命令行参数开始详细梳理。

2. 命令行参数

JMeter 的参数列表,可以通过jmeter --?查询

简单翻译如下

--? 打印命令行选项并退出 -h, --help 打印使用信息并退出 -v, --version 打印版本信息并退出 -p, --propfile 要使用的 jmeter 属性文件 -q, --addprop 其他 JMeter 属性文件 -t, --testfile 要运行的 jmeter 测试 (.jmx) 文件 -l, --logfile 将样本记录到的文件 -i, --jmeterlogconf jmeter 日志记录配置文件 (log4j2.xml) -j, --jmeterlogfile jmeter 运行日志文件 (jmeter.log) -n, --nongui 以非 GUI 模式运行 JMeter -s, --server 以 Server 模式允许 JMeter -H, --proxyHost 设置 JMeter 使用的代理服务器地址 -P, --proxyPort 设置 JMeter 使用的代理服务器端口 -N, --nonProxyHosts 设置不适用代理主机列表(例如*.apache.org|localhost) -u, --username 设置 JMeter 使用的代理服务器的用户名 -a, --password 设置 JMeter 将使用的代理服务器的密码 -J, --jmeterproperty=<value> 定义附加 JMeter 属性 -G, --globalproperty=<value> 定义全局属性(发送到服务器) 例如 -Gport=123 或 -Gglobal.properties -D, --systemproperty=<value> 定义系统属性 -S, --systemPropertyFile 指定系统属性文件 -f, --forceDeleteResultFile 在开始测试之前强制删除现有结果文件和 Web 报告文件夹(如果存在) -L, --loglevel=<value> [category=]level e.g. jorphan=INFO, jmeter.util=DEBUG or com.example.foo=WARN -r, --runremote 启动远程服务器 (as defined in remote_hosts) -R, --remotestart 指定远程服务器 (overrides remote_hosts) -d, --homedir 指定jmeter的主目录 -X, --remoteexit 在测试结束时退出远程服务器(CLI 模式) -g, --reportonly 仅从测试结果文件生成报表面板 -e, --reportatendofloadtests 在负载测试后生成报告仪表板 -o, --reportoutputfolder 报告仪表板的输出文件夹

3. 参数使用示例

1. GUI 模式启动 JMeter

jmeter

JMeter 将启动 IDE,并显示空白的测试计划

图 1.JMeter 的 GUI 界面

2. 启动 JMeter 并打开指定 JMX 文件

jmeter -t D:\ant\222.jmx

启动 JMeter 后,会自动加载D:\ant\222.jmx

图 2.JMeter 打开指定文件

3. 命令行模式启动 JMeter

jmeter -n -t D:\ant\222.jmx

命令行启动 JMeter 时间必须指定要执行的 jmx 文件

即:命令行模式是一个 Runner,只负责执行

图 3.JMeter 执行执行文件

4. 执行 JMX 文件并生成日志、结果、报告

jmeter -n -t task.jmx -j task.log -l task.csv -o ./report -e

执行效果:执行 task.jmx,并生成日志文件(task.log)、请求记录(tasl.csv)、测试报告(report)

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OkQdraa1j-RBe9Ji29wiSRNQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券