一、学习总览
|-----------|-------------------|--------------------------|
| 天数 | 主题 | 核心产出 |
| 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】控制流程和节奏的利器
今日目标
- 用逻辑控制器组织业务流程
- 用定时器模拟用户思考时间
- 会用集合点测瞬时并发
详细学习步骤(照做即可)
- 认识常用控制器:Loop(循环 N 次)、If(条件成立才执行)、While(满足条件一直循环)、Random(随机执行一个子节点)、Interleave(轮流执行)、ForEach(遍历变量数组)
- Transaction Controller(事务控制器):把「登录→下单→查询」三个请求包进去,报表会把它们合并统计成一个事务的耗时,勾选 Generate parent sample 还会单独输出一条汇总

图 1 事务控制器:一组请求合并为一个事务
- Constant Timer(固定定时器):固定等 N 毫秒,最简单
- Gaussian Random Timer(高斯随机定时器):延迟范围填 500、标准差 100,延迟围绕 500ms 随机波动,最贴近真人点击节奏
- Constant Throughput Timer(吞吐量定时器):按每分钟目标请求数控制节奏
- 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 #性能测试 |
小贴士: 别把定时器加在采样器里和请求连得太密,压测会失真;思考时间一般放线程组级别。