5.7 KiB
5.7 KiB
| 1 | ID | Title | Description | Acceptance | Test_Method | Tools | Dev_Status | Review1_Status | Regression_Status | Files | Dependencies | Notes |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | B1 | 国内最佳实践与全业务流程矩阵 | 调研国内 OA、费控、报销、审批系统的流程最佳实践,并与当前 hyb-oa 业务域做流程-角色-页面-接口-测试映射。 | 形成矩阵,覆盖认证、审批、报销、票据、HR、项目、采购、资产、系统治理;每个域标明主流程、异常流程、权限流程、最佳实践差距和优化建议。 | 业务流程:全业务流程审计;步骤:读取 docs/feature-matrix.md、docs/trialrun/coverage-matrix.csv、client 路由、server 路由、E2E 文件,并结合公开调研来源,生成 docs/trialrun/project-wide-flow-matrix.csv 和 docs/trialrun/domestic-oa-best-practices.md 后人工审阅。 | manual|node|web | DONE | DONE | DONE | docs/trialrun/project-wide-flow-matrix.csv|docs/trialrun/domestic-oa-best-practices.md | [] | 仅新增治理文档,不改变业务逻辑。 |
| 3 | B2 | 测试覆盖索引与缺口扫描 | 自动扫描前端路由、页面、后端路由和 E2E 文件,输出覆盖索引和缺口清单。 | 脚本能列出页面是否有 PC/mobile/WeCom/flow/visual 覆盖,输出 JSON 与 Markdown 摘要;缺口可按风险排序。 | 业务流程:测试治理;步骤:node scripts/qa/check-flow-coverage.mjs --json;node scripts/qa/check-flow-coverage.mjs --markdown artifacts/qa-flow/flow-coverage.md;确认包含所有 router 页面和关键后端路由。 | node | DONE | DONE | DONE | scripts/qa/check-flow-coverage.mjs|artifacts/qa-flow | ["B1"] | 新增只读扫描脚本;artifacts 不纳入提交。 |
| 4 | B3 | 全页面视觉巡检 | 构建 Playwright 全页面视觉检查,覆盖 PC、mobile、WeCom UA。 | 无横向溢出;移动无桌面表格;无 5xx/console error;无原始码值/内部术语;截图归档;无法自动登录的页面必须明确 skipped。 | 业务流程:PC 与企业微信移动端全页面巡检;步骤:E2E_BASE_URL=<local> npx playwright test tests/e2e/project-wide-visual.spec.ts --workers=1 --reporter=list。 | playwright | DONE | DONE | DONE | client/tests/e2e/project-wide-visual.spec.ts|output/playwright|artifacts/qa-flow | ["B1","B2"] | 先覆盖可 mock 或无需后端状态的页面;公网真实登录由 B5 处理。 |
| 5 | B4 | 核心业务流门禁脚本 | 聚合现有核心业务 E2E,形成可复用业务流门禁。 | 认证、请假、审批、报销、票据、周报、项目、采购、资产、系统治理等已存在用例能通过一个脚本按域执行;失败产物自动收集。 | 业务流程:全业务核心 E2E;步骤:bash scripts/qa/run-business-flow-gates.sh local;必要时传入 E2E_BASE_URL;确认脚本输出每个业务域结果。 | bash|playwright | DONE | DONE | DONE | scripts/qa/run-business-flow-gates.sh|client/tests/e2e | ["B2"] | 优先聚合现有 E2E,不在本 Issue 大规模补业务代码。 |
| 6 | B5 | 真实OCR与公网live smoke前置门禁 | 把 LIVE_SMOKE_*、真实企业微信入口、真实 OCR 样本和真机测试要求做成可检查的环境门禁。 | 缺账号或样本时明确 skipped 并说明缺项;配置完整时能执行公网 ready、企业微信配置、真实登录 smoke 和 OCR 样本上传耗时记录。 | 业务流程:公网登录、企业微信入口、真实发票上传与 OCR;步骤:node scripts/qa/check-live-smoke-env.mjs;LIVE_SMOKE_BASE_URL=https://oa.hyinda.com bash scripts/qa/run-live-smoke-readiness.sh。 | node|bash|playwright|curl|manual | DONE | DONE | DONE | scripts/qa/check-live-smoke-env.mjs|scripts/qa/run-live-smoke-readiness.sh|docs/trialrun/live-smoke-readiness.md | [] | 需要测试账号、腾讯 OCR 环境和测试发票样本;不得打印密码或 secret。 |
| 7 | B6 | 本地迁移漂移诊断专项 | 在不重置数据库的前提下诊断本地开发库 Prisma migration drift,并给出安全修复路径。 | 脚本能输出当前迁移状态、漂移风险、推荐动作;不会执行 migrate reset;如需破坏性重建必须提示人工确认。 | 业务流程:本地真实 HTTP 回归准备;步骤:bash scripts/qa/check-local-migration-drift.sh;bash scripts/qa/run-isolated-regression-dedup.sh;确认本地漂移不会阻塞隔离回归。 | bash|prisma|manual | DONE | DONE | DONE | scripts/qa/check-local-migration-drift.sh|docs/trialrun-runbook.md | [] | 短期继续使用隔离 QA 库;本项只做诊断和非破坏建议。 |
| 8 | B7 | 发布门禁project-wide模式 | 把静态扫描、覆盖扫描、业务流门禁、视觉巡检、live smoke readiness 聚合到 release gate。 | bash scripts/qa/run-release-gate.sh project-wide 可运行完整项目级门禁;缺 live 凭据时只标记 live readiness skipped,不影响本地门禁结论。 | 业务流程:发布前验证;步骤:bash scripts/qa/run-release-gate.sh project-wide;失败时输出阶段、命令、截图或报告路径。 | bash|npm|playwright | DONE | DONE | DONE | scripts/qa/run-release-gate.sh|scripts/qa/run-web-gates.sh|scripts/qa | ["B2","B3","B4","B5","B6"] | 不改变既有 all/r66 等模式默认行为。 |
| 9 | B8 | 第二轮回归部署与公网复核 | 完成 B1-B7 后执行本地回归、提交、部署和公网复核。 | Issue CSV 状态回填;git status 干净;公网 /ready、企业微信 config、public bundle scan、项目级门禁结果明确;用户可测试项已部署。 | 业务流程:交付闭环;步骤:validate issue csv、client typecheck/build、server prisma validate、project-wide gate、deploy/trialrun/deploy.sh、公网 ready 和 bundle scan。 | bash|npm|curl|git | DONE | DONE | DONE | issues|client|server|scripts|docs | ["B1","B2","B3","B4","B5","B6","B7"] | 若 live smoke 缺凭据,最终报告必须列明阻塞项和最小补齐清单。 |