【JMeter 学习打卡 Day 5】控制流程和节奏的利器

一、学习总览

|-----------|-------------------|--------------------------|
| 天数 | 主题 | 核心产出 |
| Day 1 | JMeter 入门与基础概念 | 弄清 JMeter 是什么、能干什么、不能干什么 |
| Day 2 | 第一个测试计划 + HTTP 请求 | 能独立搭出一个最小可运行的 HTTP 测试计划 |
| Day 3 | 断言:让测试结果有意义 | 理解为什么没有断言,错误率永远是 0 |
| Day 4 | 参数化与关联(重点中的重点) | 会用用户变量和 CSV 数据驱动做多用户数据 |
| Day 5 | 逻辑控制器与定时器 | 用逻辑控制器组织业务流程 |
| Day 6 | 压力测试、HTML 报告与命令行 | 搞懂并发、Ramp-Up 与各测试类型的区别 |
| Day 7 | 进阶技巧、最佳实践与综合实战 | 会用 Cookie Manager 保持登录态 |

二、每日详细计划

【JMeter 学习打卡 Day 5】控制流程和节奏的利器

今日目标

  • 用逻辑控制器组织业务流程
  • 用定时器模拟用户思考时间
  • 会用集合点测瞬时并发

详细学习步骤(照做即可)

  1. 认识常用控制器:Loop(循环 N 次)、If(条件成立才执行)、While(满足条件一直循环)、Random(随机执行一个子节点)、Interleave(轮流执行)、ForEach(遍历变量数组)
  2. Transaction Controller(事务控制器):把「登录→下单→查询」三个请求包进去,报表会把它们合并统计成一个事务的耗时,勾选 Generate parent sample 还会单独输出一条汇总

图 1 事务控制器:一组请求合并为一个事务

  1. Constant Timer(固定定时器):固定等 N 毫秒,最简单
  2. Gaussian Random Timer(高斯随机定时器):延迟范围填 500、标准差 100,延迟围绕 500ms 随机波动,最贴近真人点击节奏
  3. Constant Throughput Timer(吞吐量定时器):按每分钟目标请求数控制节奏
  4. Synchronizing Timer(集合点):右键线程组 → Add → Timer → Synchronizing Timer,Simulated Users to Group 填 100、Timeout 填 5000,等 100 个线程到齐一起发请求,专门测峰值并发

图 2 集合点定时器:等待 N 个线程同时发起请求

动手练习

  • 把三个请求包进 Transaction Controller,运行后在汇总报告里看事务级的平均耗时
  • 给线程组加 Gaussian Random Timer(500/100ms),对比加与不加的吞吐量差异
  • Synchronizing Timer 设 10 人集合点,运行看是否出现一批同时到达的请求

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| JMeter 两大节奏控制:逻辑控制器管「怎么执行」,定时器管「多快执行」。常用控制器:Loop 循环、If 条件、Transaction 把多个请求合并成一个事务统计耗时。定时器模拟真人思考时间,推荐 Gaussian Random(500ms 左右随机波动),比固定定时器真实得多。集合点 Synchronizing Timer:等 N 个线程到齐一起发请求,专门测服务端瞬间峰值。#JMeter #性能测试 |

小贴士: 别把定时器加在采样器里和请求连得太密,压测会失真;思考时间一般放线程组级别。

相关推荐
David猪大卫12 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
HPtiger12 小时前
C++ 入门笔记:从 C 到 C++ 的核心过渡(命名空间、输入输出、缺省参数、重载、引用、内联)
c语言·c++·学习
fengci.13 小时前
CTF2MISC中等部分
开发语言·前端·学习
YueTann15 小时前
mgtv5th-baseline学习
学习
蒸蒸yyyyzwd16 小时前
从后端面经学到的 3 个知识
笔记·学习
17岁的勇气16 小时前
Unity Shader unity文档学习笔记(二十二):shader变体
笔记·学习·unity
路灯上の马陈19 小时前
Java 内部类 学习笔记
笔记·学习
前进的李工19 小时前
Agent 学习笔记 12:Agent 的工具应该怎么设计
人工智能·笔记·学习·agent·工具调用·skill·工具设计
li星野19 小时前
从 DICOM 到声学属性学习记录:HU 值怎么变成密度和声速
学习
自信1504130575920 小时前
重生之从0开始学习c++之——vector-中篇
c++·学习·算法