# 测试方案:逆向结果复核、起始页与用户管理验证 测试方案文档路径:`工程分析/测试方案-2026-05-20-14-53-31.md` ## 静态检查 - 搜索确认项目库逆向分割结果含横向 Slice Navigator、DICOM 模式和旋转控制。 - 搜索确认逆向工作区映射视图含 DICOM 模式和左转/右转控制。 - 搜索确认离开确认文本不含裸 `\\n`。 - 检查用户管理前端按钮与后端接口路径一致。 - 检查默认项目状态不会自动带入旧逆向分割结果。 ## 构建检查 - 在 `WebSite/` 执行 `npm run lint`。 - 在 `WebSite/` 执行 `npm run build`。 ## 关键业务场景验证 - 访问根地址,确认显示起始页而非直接进入工作台。 - 起始页标题全称在上且更醒目,简称在下。 - 项目库“逆向分割结果”未保存时为空状态;保存后显示可拖拽融合视角和 DICOM+分割预览。 - 项目库 DICOM+分割预览可切换默认/骨窗/软组织/高对比,并可左转右转、拖动 Slice Navigator。 - 逆向工作区映射视图可切换 DICOM 模式和旋转。 - 未修改或刚保存后离开逆向工作区不弹保存确认;修改可视化工具栏后离开才弹确认。 - 系统管理中新增用户可用,删除当前用户被阻止,删除其他用户可用。 ## 医学影像数据相关边界验证 - 不修改 DICOM/STL 原始文件。 - 不伪造未保存项目的逆向分割结果。 - DICOM 显示模式只影响预览和映射底图,不改变导出数据。 ## 部署验证 - 验证 `http://127.0.0.1:4000/api/health`。 - 验证 `http://127.0.0.1:4000/` 返回 200。 - 验证 `/api/projects` 默认项目逆向分割结果为空或仅在用户保存后存在。 ## Git/Gitea 备份验证 - commit message 包含 `2026-05-20-14-53-31`。 - 推送 Gitea 成功后记录 commit。 - 确认未暂存软著材料、历史删除状态和无关运行态文件。 ## 风险与回归关注点 - 根地址强制显示起始页可能影响共享会话自动进入工作台的习惯,需要以用户本轮需求为准。 - 用户管理删除接口必须保护当前用户和最后一个管理员。 - 保存脏状态需要覆盖位姿、构件样式、切片范围、DICOM 显示模式等关键状态。 ## 实际执行记录 - 已执行 `npm run lint`,TypeScript 检查通过。 - 已执行 `npm run build`,生产构建通过;仅保留 Vite 大 chunk 体积提示。 - 已执行 `git diff --check`,未发现空白错误。 - 已执行静态搜索,确认旧文案 `导出全部`、裸 `\\n` 保存提示、单独 NII 下载入口未在目标源码中残留。 - 已重启 `tmux` 会话 `revoxelseg-dicom`,服务监听 `http://0.0.0.0:4000/`。 - 已验证 `http://127.0.0.1:4000/api/health` 返回 `ok: true`。 - 已验证 `http://127.0.0.1:4000/` 返回 HTTP 200。 - 已验证默认项目 `head-ct-demo` 的 `segmentationResults` 返回 0 条,初始逆向分割结果为空。 - 已通过接口验证用户管理:新增临时用户、编辑科室、删除临时用户成功;删除当前登录用户返回 400。