Jmeter的组件执行顺序

在 Apache JMeter 中,组件的加载和执行顺序遵循一定的规则,但有些组件在同一层级中可能会根据它们在测试计划中的位置来决定具体的执行顺序。以下是这些组件的大致加载和执行顺序,以及哪些组件属于同一层级:

  1. 线程组(Thread Group)

    • 线程组是最外层的容器,定义了虚拟用户的数量、启动策略和运行时间等。每个线程组内部的组件按以下顺序执行。
  2. 配置元件(Config Element)

    • 配置元件用于设置采样器的默认属性或其他相关配置信息。这些元件通常在第一个需要它们的采样器之前被初始化。
  3. 前置处理器(Pre-Processor)

    • 前置处理器在采样器执行之前运行,可以用来修改请求的数据或者进行一些预处理操作。
  4. 定时器(Timer)

    • 定时器控制线程在发送请求之前的等待时间。定时器会在前置处理器之后,但在采样器执行之前生效。
  5. 控制器(Controller)

    • 控制器用于组织和控制采样器的执行逻辑。控制器决定了采样器的执行顺序和条件。控制器和采样器属于同一层级,控制器可以包含采样器和其他控制器。
  6. 取样器(Sampler)

    • 取样器是实际向目标服务器发送请求的组件。它是测试的核心部分,每个线程组至少需要包含一个采样器。
  7. 后置处理器(Post-Processor)

    • 后置处理器在采样器执行后运行,通常用于处理响应数据,如提取特定的信息以供后续使用。
  8. 断言(Assertion)

    • 断言用于验证采样器的响应是否符合预期的标准。断言在后置处理器之后执行,用来确保测试结果的正确性。
  9. 监听器(Listener)

    • 监听器用于收集和展示测试结果,包括性能指标、错误报告等。监听器通常在整个请求流程结束后才会处理数据并显示结果。

同一级别的组件

  • 控制器(Controller)取样器(Sampler) 属于同一层级,控制器可以包含采样器和其他控制器。
  • 前置处理器(Pre-Processor)定时器(Timer)后置处理器(Post-Processor)断言(Assertion)监听器(Listener) 都可以与采样器关联,但它们的执行顺序根据上述顺序进行。

总结

  • 线程组 是最外层的容器。
  • 配置元件 在需要它们的第一个采样器之前初始化。
  • 前置处理器定时器 在采样器执行之前运行。
  • 控制器取样器 属于同一层级,控制器可以包含采样器和其他控制器。
  • 后置处理器断言 在采样器执行后运行。
  • 监听器 在整个请求流程结束后处理数据并显示结果。

理解这些组件的层级关系和执行顺序有助于更好地设计和调试 JMeter 测试计划。

相关推荐
测试19981 天前
Jmeter接口自动化生成测试报告html格式详解
自动化测试·python·测试工具·jmeter·职场和发展·测试用例·接口测试
stillstream_ink2 天前
OpenCart性能压测复盘|JMeter\+Locust双工具实操,附5个踩坑记录
jmeter·测试
岁月失语唯石能言5 天前
《 Web项目测试实战:博客系统的功能/接口/自动化/性能全流程测试报告》
自动化测试·功能测试·selenium·jmeter·接口测试·压力测试·性能测试
中国软件测试质量协会6 天前
国产性能测试工具:kylinPET高仿真与高并发性能测试技术深度解析——与JMeter、LoadRunner全面对比
测试工具·jmeter
拜托多多指教7 天前
【JMeter】外观设置(Mac)
jmeter
川石课堂软件测试14 天前
自动化测试常见的异常处理
python·jmeter·mysql·docker·容器·单元测试·grafana
wuhuhuan15 天前
JMeter 性能测试教程
jmeter
行者-全栈开发15 天前
JMeter + InfluxDB + Grafana:搭建生产级压测实时监控与告警体系
jmeter·grafana·时序数据库·influxdb·实时监控·backendlistener·告警性能测试