综合练习
API + E2E 测试计划编写。
40 分钟
综合练习
串联本 track:测试计划 → API 回归 → UI 冒烟 → CI 门禁。目标对象:CodeRoadMap tracks 模块(backend REST + platform 页面),对照 /roadmaps/qa 全路径验收。
学习目标
- 交付一份 tracks 模块测试计划(范围、策略、环境、准出)
- 实现 ≥4 条 API 自动化用例与 ≥2 条 Playwright 冒烟
- 将测试纳入本地命令与 CI 预期行为
- 区分 QA 交付物与 testing-essentials 代码测试的边界
核心概念
任务清单
-
测试计划(文档)
- 范围:GET /tracks、GET /tracks/{slug}、列表页、详情页
- 策略:API 自动回归 + E2E 冒烟 + 手工探索 charter 1 条
- 准出:CI 绿、无 P1 开放缺陷、UAT 签字项完成
-
API 层(MockMvc 或 REST Assured)
- 正常 slug → 200 + 字段完整
- 不存在 slug → 404
- 列表非空(或空列表结构正确)
- 非法 slug 格式 → 4xx
参考 qa-api、test-mockmvc
-
E2E 层(Playwright)
- 首页 → tracks 列表可见
- 进入 git-essentials 详情,标题存在
参考 qa-automation、test-e2e
-
(选做)非功能
- tracks 页 axe 无 critical;或 k6 对 GET /tracks 30 秒负载(qa-performance)
验收命令
cd backend && mvn test -Dtest='Track*Test'
cd platform && npx playwright test tracks.spec.ts # 若已配置
cd backend && mvn verify # 提交前
推送分支后确认 GitHub CI workflow 与 qa-tools 描述一致。
评分参考(自学)
| 项 | 标准 |
|---|---|
| 计划 | 含范围、策略、准出,非空模板 |
| API | 含正常 + 异常,断言具体字段 |
| E2E | 语义选择器,无固定 sleep |
| 追溯 | 用例 ID 可对应计划条目 |
与 testing-essentials/Spring 对照
| qa-essentials 交付 | testing-essentials 实现 |
|---|