# 三端自动化测试 > 本项目覆盖 **后端 API**、**Web 后台管理系统**、**小程序** 三端的自动化测试,总计 **1,286+ 用例,100% 通过率**。 --- ## 测试总览 | 端 | 测试类型 | 框架 | 用例数 | 通过率 | 详细文档 | |---|---|---|---|---|---| | **后端 API** | 单元 + 集成 | JUnit 5 + Mockito | 1,094 | 100% | [backend-api-test.md](docs/backend-api-test.md) | | **Web 后台** | 单元(组件) | Vitest + jsdom | 171 | 100% | [web-admin-test.md](docs/web-admin-test.md) | | **Web 后台** | E2E(端到端) | Playwright | 24+ | 100% | [web-admin-test.md](docs/web-admin-test.md) | | **小程序** | E2E(端到端) | Jest + miniprogram-automator | 7 | 100% | [miniapp-test.md](docs/miniapp-test.md) | --- ## 各端运行方式 ```bash # 后端 API cd gym-manage-api && mvn test # Web 后台 — 单元测试 cd gym-manage-web && npm run test # Web 后台 — E2E 测试 cd gym-manage-web && npm run test:e2e # 小程序 — E2E 测试 cd gym-manage-uniapp && npx jest --config e2e/jest.config.js ``` --- ## 自动化触发时机 | 触发条件 | 后端 API | Web 单元 | Web E2E | 小程序 E2E | |---|---|---|---|---| | **Push 到功能分支** | ✅ 自动 | ✅ 自动 | ❌ | ❌ | | **PR 提交到 main/master** | ✅ 自动 | ✅ 自动 | ✅ 自动 | ✅ 自动 | | **合并到 main/master** | ✅ 自动 | ✅ 自动 | ✅ 自动 | ✅ 自动 | | **每日定时(凌晨 2:00)** | ✅ 自动 | ✅ 自动 | ✅ 自动 | ❌ | | **手动触发** | ✅ | ✅ | ✅ | ✅ | ### 触发策略说明 **Push 到功能分支**(快速反馈,< 5 分钟): - 运行后端单元测试 + Web 单元测试 - E2E 测试不触发(耗时较长,避免阻塞开发) **PR / 合并到 main**(完整验证,< 15 分钟): - 运行全部三端测试 - 小程序 E2E 需微信开发者工具环境,无环境时跳过 **每日定时**(全量回归): - 凌晨自动运行全部测试,生成报告 - 小程序 E2E 除外(需 GUI 环境) --- ## 测试分层架构 ``` ┌─────────────────────────────────────────────────────┐ │ 三端测试体系 │ ├──────────────┬──────────────────┬───────────────────┤ │ 后端 API │ Web 后台管理 │ 小程序 │ ├──────────────┼──────────────────┼───────────────────┤ │ JUnit 5 │ Vitest (单元) │ Jest + automator │ │ Mockito │ jsdom (DOM模拟) │ (E2E) │ │ Reactor Test │ Playwright (E2E) │ │ ├──────────────┼──────────────────┼───────────────────┤ │ 105 测试文件 │ 24 单元文件 │ 3 套件 │ │ 15 模块 │ 24+ E2E文件 │ 7 用例 │ │ 1,094 用例 │ 185+ 用例 │ 5 Page Object │ └──────────────┴──────────────────┴───────────────────┘ ``` --- ## 快速链接 | 文档 | 内容 | |---|---| | [backend-api-test.md](docs/backend-api-test.md) | 后端 15 模块详细测试清单、API 路由覆盖、状态机测试矩阵 | | [web-admin-test.md](docs/web-admin-test.md) | Vitest 24 文件详情 + Playwright 4 项目详情 + 17 个 Page Object | | [miniapp-test.md](docs/miniapp-test.md) | 3 套件详情、预约+签到流程、Mock 策略、环境配置 | | [../docs/test-report-2026-07-21.md](../docs/test-report-2026-07-21.md) | 全量测试报告(含测试路线图) | | [../Jenkinsfile](../Jenkinsfile) | CI/CD 流水线配置 | --- ## 维护指南 1. **新增后端接口** → 在对应模块 `src/test/` 下添加 JUnit 测试,更新 [backend-api-test.md](docs/backend-api-test.md) 2. **新增 Web 页面** → 添加 Vitest 组件测试 + Page Object + E2E 旅程,更新 [web-admin-test.md](docs/web-admin-test.md) 3. **新增小程序功能** → 添加 E2E 用例或 Page Object,更新 [miniapp-test.md](docs/miniapp-test.md) 4. **修改 CI 触发规则** → 编辑 `Jenkinsfile`,同步更新本文档「自动化触发时机」章节