feat(dev-test): 新增 API Mock E2E 冒烟测试模式,让 Gate 4 不再流于形式

解决 E2E 门禁依赖后端导致形同虚设的问题:
- 新增 page.route() API Mock 模式,零后端依赖
- 文档化 mock JWT 生成、addInitScript 注入、catch-all 兜底等关键模式
- 整理 6 个常见陷阱及解决方案
- 明确 Gate 4 判定标准和适用场景

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-16 11:06:17 +10:30
parent 58516a57a9
commit 63ab37c256
3 changed files with 273 additions and 37 deletions

View File

@@ -13,7 +13,7 @@ description: 软件测试技能。用于单元测试、集成测试、E2E测试
| `frontend-testing.md` | Vue (Vitest) + React (Jest) 前端测试 |
| `ios-testing.md` | iOS 测试 (XCTest + Swift Concurrency) |
| `android-testing.md` | Android 测试 (JUnit + Espresso + Compose) |
| `e2e-testing.md` | E2E Playwright + Coolbuy PaaS 集成测试 |
| `e2e-testing.md` | E2E PlaywrightAPI Mock 冒烟测试(无后端)+ 全链路集成测试 |
---
@@ -46,8 +46,9 @@ description: 软件测试技能。用于单元测试、集成测试、E2E测试
| React | `npm test` | `frontend-testing.md` |
| iOS | `xcodebuild test` | `ios-testing.md` |
| Android | `./gradlew test` | `android-testing.md` |
| E2E (通用) | `npm run test:e2e` | `e2e-testing.md` |
| E2E (Coolbuy PaaS) | `make e2e` | `e2e-testing.md` |
| E2E (Mock 冒烟) | `npm run test:e2e:smoke-mock` | `e2e-testing.md` §API Mock |
| E2E (全链路) | `npm run test:e2e` | `e2e-testing.md` §全链路 |
| E2E (Coolbuy PaaS) | `make e2e` | `e2e-testing.md` §Coolbuy |
---
@@ -138,4 +139,5 @@ ai-proj task append-doc --id <taskId> --content "# 测试报告
5. **持续集成** - 每次提交运行
6. **Biz 层禁止 Mock** - biz/service 层必须使用真实 PostgreSQL test DB + 真实 storemock 等于没测
7. **Mock 仅限 Handler 层** - handler 层可以 mock biz 接口 + httptest
7. **李宁测试用例** - Excel 导出见 `coolbuy-legacy` 技能的 `test-cases-excel.md`
8. **Gate 4 必须用 API Mock E2E** - E2E 门禁不能依赖后端,否则形同虚设。用 `page.route()` 拦截 API`e2e-testing.md`
9. **李宁测试用例** - Excel 导出见 `coolbuy-legacy` 技能的 `test-cases-excel.md`