Files
hms/docs/qa/role-test-plans/R03-nurse.md
iven 6d5a711d2c
Some checks failed
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled
fix: 修复测试发现的 7 个问题 + 全 workspace clippy 清零
功能修复:
1. 患者创建空名称验证:后端添加 name.trim().is_empty() 检查
2. 仪表盘统计容错:单个查询失败返回零值而非 500
3. FHIR 路由修复:从 /fhir 移到 /api/v1/fhir 保持一致
4. 冻结模块后端中间件:新增 frozen_module_middleware 拦截冻结路径
5. 积分端点权限码:health.health-data.list → health.points.list
6. 角色权限迁移:护士补充 devices.list,运营补充 points.list/manage
7. 测试结果文档:R01-R05 角色测试 + T00/T10 结果归档

Clippy 全 workspace 清零(14→0 errors):
- erp-core: 修复 empty doc line、collapsible if、redundant closure 等 9 处
- erp-health: 修复 too_many_arguments、unused var、unnecessary parens 等 58 处
- erp-ai: 修复 dead_code、unused import 等 11 处
- erp-plugin: 修复 too_many_arguments、wildcard pattern 等 11 处
- erp-server-migration: 修复 enum_variant_names 5 处
- erp-auth/config/workflow/message: 各 1-3 处

工程改进:
- lint-staged 配置迁移到 .lintstagedrc.js(函数式避免文件列表传给 clippy)
- cargo fmt 统一格式化
2026-05-07 23:43:14 +08:00

6.9 KiB
Raw Blame History

R03 — Nurse护士业务场景测试计划

角色: nurse | 测试账号: nurse_test / Admin@2026 | 菜单数: 20 | 重点: 随访执行与体征录入

1. 登录 & 仪表盘

# 测试项 操作 预期结果 通过
1.1 登录 输入 nurse_test / Admin@2026 成功登录,左侧菜单 20 项
1.2 随访监控台 查看首页 显示"随访监控台":今日随访数、逾期随访数、体征上报率、待办事项
1.3 待办列表 查看待办区域 Tab 筛选(全部/AI建议/告警/随访/数据异常),显示具体待办项
1.4 快捷操作 查看底部入口 开始随访、录入体征、查看AI分析、联系患者

2. 场景 A — 患者管理

业务链: 查看患者列表 → 查看详情 → 新增患者 → 录入体征

# 步骤 操作 预期结果 通过
A.1 患者列表 /health/patients → 搜索 显示患者列表,支持搜索
A.2 患者详情 点击患者卡片 显示基本信息、体征数据
A.3 新增患者 点击新增 → 填写信息 → 保存 可新增患者(有 patient.manage 权限)
A.4 体征查看 患者详情 → 体征 Tab 显示体征趋势图

交接点: 护士新增/管理的患者,医生和健康管理师可同步看到。

3. 场景 B — 随访执行闭环

业务链: 接收随访任务(医生创建)→ 执行随访 → 录入结果 → 标记完成

# 步骤 操作 预期结果 通过
B.1 随访列表 /health/follow-up-tasks → 按状态筛选 显示待办/进行中/已完成随访
B.2 接收任务 查看 pending 状态的随访(医生创建的) 显示随访类型、患者、计划日期
B.3 创建随访 点击新增 → 选患者/类型/日期 → 保存 护士也可自主创建随访任务
B.4 执行录入 点击某条随访 → 录入 → 填写随访记录 → 保存 随访状态 pending → in_progress → completed
B.5 验证完成 回到随访列表 → 筛选已完成 已录入的随访出现在已完成列表

交接点: 护士完成的随访记录,医生可在详情中查看录入内容。

4. 场景 C — 咨询查看

业务链: 查看咨询列表 → 了解患者沟通情况

# 步骤 操作 预期结果 通过
C.1 咨询列表 /health/consultations → 查看列表 可查看咨询列表(只读)
C.2 无管理权限 检查回复/关闭按钮 回复和关闭按钮不可见或禁用(无 consultation.manage

5. 场景 D — 告警处理

业务链: 查看告警 → 确认危急告警

# 步骤 操作 预期结果 通过
D.1 告警仪表盘 /health/alert-dashboard → 查看 显示告警统计(只有 alerts.list无 manage
D.2 告警详情 查看某条告警 可查看告警详情和关联患者
D.3 操作按钮 检查确认/处理按钮 确认按钮是否可用(取决于 alerts.list vs alerts.manage

6. 场景 E — 诊断与知情同意

业务链: 查看诊断记录 → 管理知情同意书

# 步骤 操作 预期结果 通过
E.1 诊断记录 /health/diagnoses → 查看列表 只读查看,无编辑/新增按钮(无 manage 权限)
E.2 知情同意 /health/consents → 查看 可查看和管理知情同意书

7. 场景 F — 行动收件箱

业务链: 接收 AI 建议/告警通知 → 处理行动项

# 步骤 操作 预期结果 通过
F.1 行动列表 /health/action-inbox → 筛选类型 显示 AI 建议/告警/随访等行动项
F.2 处理行动 点击处理按钮 → 标记完成 行动项状态变更

8. 消息

# 测试项 操作 预期结果 通过
8.1 消息列表 /messages → 查看 只读消息列表,可标记已读

9. 权限边界验证

nurse 不应访问的模块

# 测试项 操作 预期结果 通过
9.1 无医护管理 地址栏输入 /health/doctors 403 或不可见
9.2 无标签管理 地址栏输入 /health/tags 403 或不可见
9.3 无积分管理 地址栏输入 /health/points-rules 403 或不可见
9.4 无内容管理 地址栏输入 /health/articles 403 或不可见
9.5 无 AI 分析 地址栏输入 /health/ai-analysis 403 或不可见
9.6 无随访模板 地址栏输入 /health/follow-up-templates 403 或不可见
9.7 无用户管理 地址栏输入 /users 403 或不可见

10. 跨角色协作验证

# 协作场景 操作 预期结果 通过
X.1 医生随访转护士 查看医生创建的随访任务 任务出现在待办列表,可执行
X.2 录入后医生可查 完成随访录入 → 用 doctor 账号验证 医生可看到护士录入的随访内容
X.3 告警联动 患者体征异常 → 告警出现 告警出现在行动收件箱
X.4 体征录入联动 录入异常体征 → 检查告警仪表盘 异常体征触发告警规则
X.5 随访完成→行动收件箱 完成随访 → 检查行动收件箱 随访完成事件触发后续行动

11. 事件链路验证

# 事件链路 触发操作 验证方式 通过
E.1 随访指派接收 doctor 创建随访并指派 护士仪表盘待办数更新,随访列表出现新任务
E.2 告警推送 体征超阈值触发告警 行动收件箱出现新告警行动项
E.3 随访完成通知 完成随访录入 医生端随访详情更新为已完成

11. 小程序端(医护工作台)

# 测试项 操作 预期结果 通过
11.1 登录跳转 nurse_test 登录小程序 跳转到 /pages/doctor/indexisMedicalStaff=true
11.2 问候语 查看问候 显示角色对应的问候
11.3 工作概览 查看 4 个数据卡片 我的患者、未读消息、待处理随访、今日咨询
11.4 无健康审核区 查看页面 不显示"健康审核"区域
11.5 快捷操作 查看 4 个按钮 患者查询、随访记录、告警中心、行动收件箱(没有: 化验审核、透析管理、处方管理)

测试结果

  • 测试人: _________
  • 测试日期: _________
  • 通过数: ___ / 总数: ___
  • 问题记录: