02 · 测试生命周期
六阶段门禁模型
每个阶段都有明确的进入条件(Gate In)和退出条件(Gate Out)。不满足不流转。
Gate In 阶段 Gate Out 下一阶段
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PRD已评审 ──► ① 测试分析 ──► 测试策略评审通过 ──►
策略已批准 ──► ② 用例设计 ──► 用例评审通过 ──►
提测达标 ──► ③ 测试执行 ──► Bug收敛/用例完成 ──►
Bug已修复 ──► ④ 回归验证 ──► 回归通过 ──►
全部通过 ──► ⑤ 准出评审 ──► 准出报告签发 ──►
已上线 ──► ⑥ 线上验证 ──► 验证报告归档 ──► Done
各阶段门禁的详细标准见 04-gates。
阶段 1 — 测试分析
触发条件:需求评审通过
输入
| 类型 | 必备 | 说明 |
|---|---|---|
| PRD 文档(含验收标准) | ✅ | 格式:Markdown / Confluence / Wiki |
| 用户故事地图 | ✅ | 明确业务流 |
| 业务流程图 | ✅ | 状态机 / 流程图 |
| 竞品分析 | 可选 | |
| 历史版本的测试总结 | 可选 |
输出
| 交付物 | 审批人 | 时限 |
|---|---|---|
| 测试策略文档 | 测试负责人 + PM | 需求评审后 2 工作日 |
| 需求可测性反馈 | 产品经理 | 实时同步 |
测试策略文档包含:
- 测试范围(In Scope / Out Scope)
- 测试类型(功能、性能、安全、兼容性)
- 风险评估矩阵(可能性 × 影响度)
- 资源与排期
- 环境需求
Gate Out
- 测试策略评审通过
- 需求疑问全部关闭
- 测试资源确认
阶段 2 — 用例设计
触发条件:测试策略评审通过 + 技术方案确认
输入
- 已批准的测试策略
- 接口契约文档(Markdown 接口模板)
- 数据库设计文档
- 技术方案评审纪要
输出
| 交付物 | 格式 | 覆盖要求 |
|---|---|---|
| 测试用例集 | 模板链接 | 核心流程 100%、异常/边界 ≥ 80% |
| 测试数据方案 | Markdown + 准备脚本 | 可重复、可清理 |
| 自动化可行性分析 | Markdown | 技术选型建议 |
Gate Out
- 用例评审通过(产品 + 开发参与)
- 测试数据准备就绪
阶段 3 — 测试执行
触发条件:开发提测 + 提测达标(见 04-gates/submission-gate.md)
输入(Gate In 严格把关)
- 提测申请单(格式:submission 模板)
- CI 流水线绿灯
- 冒烟测试通过
- 测试环境部署完成且可访问
- 接口文档与实际一致
输出
| 交付物 | 频率 |
|---|---|
| 每日测试进度报告 | 每天 |
| Bug 报告 | 实时 |
| 测试执行报告 | 每轮 |
Gate Out
- 核心用例通过率 100%
- 无 P0/P1 遗留 Bug
- Bug 收敛趋势达标
阶段 4 — 回归验证
触发条件:Bug 修复完成并部署
输入
- 修复后的版本
- Bug 修复清单(含修复 commit)
输出
- 回归测试报告
- 新增 Bug 清单(如有)
Gate Out
- 所有已修复 Bug 验证通过
- 回归用例通过率 100%
- 无回归引入新问题
阶段 5 — 准出评审
触发条件:回归通过 + 所有 Gate Out 满足
输入
- 全阶段测试数据
- Bug 统计
- 风险清单
输出
- 准出报告(格式见 test-reports 模板)
- 上线 checklist
- 回滚方案
Gate Out
- 测试负责人签字
- 项目经理批准
- 运维接收确认
阶段 6 — 线上验证
触发条件:版本已发布
输入
- 发布版本
- 监控告警
- 灰度数据
输出
- 线上验证报告
- 如有问题:线上问题复现报告
- 测试回顾与改进项
Gate Out
- 灰度验证通过
- 监控指标正常
- 报告归档