JMeter之JMX文件解释
- [1. 背景](#1. 背景)
- [2. 目的](#2. 目的)
- [3. 文件介绍](#3. 文件介绍)
1. 背景
Jmeter脚本的文件是jmx格式,JMX 文件是 Apache JMeter 的测试计划文件,其全称为 "JMeter XML"。下面是一些关于 JMX 格式的关键点:
文件格式:
- 文件格式
JMX 文件采用 XML(可扩展标记语言)格式。这意味着它是以文本形式存储的,结构化的数据可以方便地被人类和机器读取。
内容: - 文件内容
JMX 文件包含了 JMeter 测试计划的所有设置,包括线程组、请求参数、断言、监听器等。这些元素定义了性能测试的具体行为和配置。
可编辑性: - 可编辑性
由于 JMX 是 XML 格式,您可以使用文本编辑器打开和编辑它。这使得用户能够直接修改测试计划,而不仅限于通过 JMeter 的 GUI 界面。
版本兼容性: - 版本兼容性
JMX 文件通常与 JMeter 的特定版本相关,使用较新的 JMeter 版本打开旧版 JMX 文件可能会出现兼容性问题。
共享与重用: - 共享于重用
JMX 文件非常适合共享和重用,可以方便地与团队成员交换测试计划,或者在不同的环境中运行相同的测试。
2. 目的
- 记录jmx文件各参数组件含义
3. 文件介绍
xml
测试计划
<TestPlan guiclass="TestPlanGui" testclass="TestPlan" testname="Test Plan" enabled="true">
</TestPlan>
线程组
<SetupThreadGroup guiclass="SetupThreadGroupGui" testclass="SetupThreadGroup" testname="user_api" enabled="true">
</SetupThreadGroup>
测试名称
testname="user_api"
循环次数
<stringProp name="LoopController.loops">2</stringProp>
并发数(模拟用户数)
<stringProp name="ThreadGroup.num_threads">30</stringProp>
并发时间
<stringProp name="ThreadGroup.ramp_time">5</stringProp>
http request
<stringProp name="HTTPSampler.domain">172.16.100.8</stringProp>
<stringProp name="HTTPSampler.port">80</stringProp>
<stringProp name="HTTPSampler.protocol"></stringProp>
<stringProp name="HTTPSampler.contentEncoding"></stringProp>
<stringProp name="HTTPSampler.path"></stringProp>
<stringProp name="HTTPSampler.method">GET</stringProp>
响应断言
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Response Assertion" enabled="true">
<stringProp name="49586">200</stringProp>
<stringProp name="Assertion.custom_message"></stringProp> #失败后的信息
<intProp name="Assertion.test_type">1</intProp> #test_type对应类型,如包含、匹配等
结果树
<ResultCollector guiclass="ViewResultsFullVisualizer" testclass="ResultCollector" testname="View Results Tree" enabled="true">
聚合报告
<ResultCollector guiclass="StatVisualizer" testclass="ResultCollector" testname="User Aggregate Report" enabled="true">