# huike-e2e-moicen 项目指南 ## 项目结构 本仓库为 huike-music-room 前端 H5 的端到端(Playwright)测试套件。 兄弟目录: - `../huike-back/` — 后端(Rust/Diesel) - `../huike-front/` — 前端(Vue 3 SPA + Vant) ## 交流风格 - 使用中文 - 不道歉,不冗余收尾 - 引用代码时用真实文件路径 ## 工具链 - 文本检索:`rg`(ripgrep) - E2E 测试:`npx playwright test` ## 本地执行 E2E 测试(先本地,再 CI) 推送前先在本机对 moicen 测试服执行 Playwright 测试,避免反复推送等 CI 结果: ```bash cd /Users/weli/works/huiwing-migration/huike-e2e-moicen # 执行指定测试文件 npx playwright test tests/clazz-ui.spec.ts --reporter=list # 执行全部测试 npx playwright test --reporter=list # 带 UI 调试模式 npx playwright test --ui ``` 测试通过后再 commit & push 触发远程 CI。 ## CI 工作流 ### 等待 CI 完成 使用 `gh run watch` 在后台检测,不要轮询: ```bash # 获取最新 CI run ID gh run list --repo alchemy-studio/huike-e2e-moicen --limit 1 --json databaseId --jq '.[0].databaseId' # 后台 watch(用 & 或 run_in_background),完成后会自动通知 gh run watch --repo alchemy-studio/huike-e2e-moicen 2>&1 & ``` 也可以用 `gh run watch --job=` 监控特定 job。 注意:`gh run watch` 依赖当前目录的 git remote 确定仓库,所以要在 `huike-e2e-moicen` 目录下跑,或者用 `--repo` 参数显式指定。 ### 两个 Workflow | Workflow | 环境 | 触发方式 | 测试范围 | |----------|------|----------|----------| | `music-room Playwright` | 测试服 (moicen.com) | push/PR 自动 + 手动 + 每日 06:30 UTC | 全部测试(含登录) | | `production Smoke` | 正式服 (huiwings.cn) | 手动触发 + 每日 05:00 UTC | 仅访客测试(`--grep-invert "已登录"`) |