CI 交付
Day 25 - Weekly Review 5: A Sustainably Running Test Suite
今日目标
- 整合 trace、report、parallel、CI。
- 让测试不只是本地能跑,而是持续可运行。
学习时间安排(60–120 分钟)
| 时间 | 模块 | 做什么 |
|---|---|---|
| 0-20 分钟 | 本周概念回顾 | 过一遍概念表,检查 CI 相关配置是否完整。 |
| 20-45 分钟 | 实践任务 | 完成配置、CI、产物、分层的全部落地项。 |
| 45-75 分钟 | 运行验证 | 本地模拟 CI 运行方式验证 smoke 和 regression。 |
| 75-105 分钟 | 策略文档 | 完成测试分层策略说明。 |
| 105-120 分钟 | 复盘与作业 | 完成复盘问题,让 AI 审查可持续性。 |
本周概念回顾
| English | 中文 | 是否已掌握 |
|---|---|---|
| Trace Viewer | 轨迹调试 | |
| on-first-retry | 重试录制策略 | |
| HTML / JUnit report | 报告格式 | |
| upload-artifact | 产物上传 | |
| workers / fullyParallel | 并行执行 | |
| retries | 重试 | |
| shard | 分片 | |
| npm ci / --with-deps | CI 安装 | |
| secrets | 密钥管理 | |
| @smoke tag | 测试分层标签 |
实践任务
完成以下内容:
playwright.config.ts配置完成。- CI workflow 完成。
- HTML report 可下载。
- 失败时保留 trace。
- smoke 测试可独立运行。
- regression 测试可按 tag 运行。
示例 tag:
test('checkout flow @smoke', async ({ page }) => {
// ...
});
运行:
npx playwright test --grep @smoke
自查清单
- [ ] 配置、CI、报告、trace 全部就位
- [ ] 失败时能拿到 trace 和截图
- [ ] smoke 可独立运行(--grep @smoke)
- [ ] regression 可全量运行
- [ ] CI 产物保留策略已配置
今日产出
- 一个可在 CI 执行的 Playwright 项目。
- 一份测试分层策略。
复盘问题
- 你的测试集是否适合每天运行?
- 哪些测试适合 PR 阶段运行?
- 哪些测试适合 nightly 运行?
- 失败后开发如何查看证据?
- 如何判断测试集是否越来越不稳定?
AI 时代扩展:让 AI 审查可持续性
适用场景
把配置、workflow、分层策略整体交给 AI,让它从“一个月后的维护者”视角审查:哪里会坏、坏了怎么发现、证据怎么拿。
可复用表达 / 提示词
请从「一个月后的维护者」视角审查我的测试基础设施:配置、CI、产物、分层策略,指出最容易失效的 3 个环节和修复建议。
追问加练
- AI 说“CI 跑得太慢”,你有哪些可选的提速手段?
- 如何量化“测试集越来越不稳定”?AI 能帮你设计什么指标?
- 分层策略里,AI 通常会把哪些测试放错层?
今日作业
- 完成全部落地项并本地验证 smoke 与 regression 两种运行方式。
- 完成测试分层策略文档(分层、触发时机、产物、通知)。
- 让 AI 审查整体方案,输出一份改进清单。