跳转到主要内容

E2E 场景清单(medilink 册)

覆盖地图非用例步骤表——用例步骤即 scripts/dev/e2e.sh 本体(一次性长链,段=场景);本表给全景覆盖、FSD 回链与缺口。测试约定见 e2e-测试约定.md。 断言规模:83 处 expect_status + 若干业务字段断言(896 行脚本)。

1. 覆盖地图(10 场景 = 脚本十段)

场景 ID场景名FSD 功能 ID前置种子主干路径关键断言冒烟可并行现状
E2E-BOOT世界重建与起服——db-reset→seed→build→起服 18032→healthzhealthz=200;库已重建✅✗(世界根)已实现 [1/10][2/10]
E2E-HOS医院公开面F2.01/F1.034 医院(3 PUBLISHED)无 token 401→guest-session→列表 total=3→详情→数组字段非 null401/total=3/[] 非 null✅✗已实现 [3/10]
E2E-CHAT双语聊天全链F3.01-F3.07/F1.01guest token;CONSULTANT 9001建会话→SSE 后台捕获→发消息(≤2.5s)→[zh] 译文回填→B 端两段式登录→会话列表→顾问回复→访客收 [en] 译文→已读201/译文 SSE/两段式/read_at✅✗已实现 [4/10]
E2E-REG注册与开单F4.01/F4.02/F4.03/F1.02/F3.08直传文档 2 份presign→真 PUT MinIO→confirm→注册事务链→重复注册 409→绑定后 /pub 409→患者登录→/pt 补拉见历史→患者发送→顾问 SSE 收201/409×2/事务链响应工单号✅✗已实现 [5/10]
E2E-TICK工单流转与预诊断F5.02/F5.03/F6.01/F6.02/F6.03工单=注册开出CREATED 筛选→分配顾问→流转→assign-doctor→B 端 SSE ticket 事件→跳段 409→医生登录→待诊列表→拒绝(回退边3)→重派→再预诊(M10 专家选人 dept 锚+hospital_id 回填)→患者看方案→进度点亮→确认方案白名单 409/快照覆盖/estimate 字段✅✗已实现 [6/10]
E2E-PAY支付闭环F7.01/F7.02/F7.03方案已确认(PENDING_PAYMENT)创建支付单(fake 档)→构造 HMAC webhook 密文→失败事件(订单 FAILED+回退边1)→重新确认→支付单#2→成功事件(SUCCEEDED+PENDING_DEPARTURE+凭证 PDF)→重复投递 200 幂等回退边1/幂等 200/凭证落桶✅✗已实现 [7/10]
E2E-CARE诊疗阶段与出行F8.01/F8.02/F9.01/F9.02IN_TREATMENT 工单阶段推进(C 轴前置校验)→阶段资料新组→同组替换 v2→出行记录创建+流转→患者 /pt/trips 只读is_current 翻转/版本 v2/白名单✅✗已实现 [8/10]
E2E-ADMIN后台运营F10.01/F10.03-F10.06/F5.05/F2.03-F2.06/F4.05全前段数据INBOX 待办→已读→重复 404→注册卡片→看板聚合+超时表→op_log 断言 ticket.assign→医院管理 CRUD/状态流转/科室/专家→TOTP 重置三态→用户管理→GDPR 链(export→erase→墓碑四连)→残留单对账与关单墓碑语义/审计行/白名单流转✅✗已实现 [9/10]
E2E-RATE限流F1.06清 rl:* 后满窗61 次匿名请求 → 第 61 次 429429✅✗(污染窗口恒最后)已实现 [10/10]
E2E-UI浏览器冒烟F1.01/F3.06/F5.02/F2.01/F3.03十段终态库web:登录→工单→看板;app:医院列表→聊天面关键链可达✅web/app 两 project已实现(Playwright 2 spec)

2. 已知产品缺口(如实记录,非缺陷)

缺口说明去向
浏览器级仅 2 冒烟 specadmin-smoke / patient-smoke 关键链;无逐页 UI 断言(用户裁决 M9:Playwright=关键链冒烟,否决全链浏览器级重写)维持裁决
UI 细节无断言表单校验提示/按钮显隐权限矩阵(authz.ts has())无浏览器级验证web vitest 单测覆盖 authz 纯函数
手工走查清单未建专家 Modal/凭证 PDF/Taro 咨询链/TOTP 登录页(NEXT-SESSION 遗留项)本次 docs/manual/人工测试清单 补齐

3. 与人工测试清单的关系

人工测试清单(docs/manual/人工测试清单.md)按 T 组编号组织走查用例,每用例标注 E2E 覆盖状态:

  • 🟢 已断言(挂场景 ID)——人工只需抽验;
  • 🟡 待实现(UI 级无自动化)——人工必测;
  • 归类规则:可稳定 API 断言的升格进 e2e.sh;纯视觉/交互体验的永不自动化。

4. FSD 反向覆盖统计

模块功能节数e2e 直覆盖节数覆盖率
m01 认证权限66(F1.01-F1.06 全部经链路断言)100%
m02 医院主数据66(公开 2 + 管理 4)100%
m03 双语咨询87(F3.04 图片消息未断言——直传链覆盖病历/阶段图,聊天图 mini 两步无专段)88%
m04 注册病历55100%
m05 工单看板55100%
m06 预诊断33100%
m07 支付对账55100%
m08 诊疗过程33100%
m09 出行协助33100%
m10 系统审计66100%
合计504998%

唯一缺口 F3.04:聊天图片消息(presign→PUT→发消息内联 confirm)无专段——登记为下一次 e2e 扩展项(非阻塞:与病历直传共享 Store 两道拦截逻辑)。