# 测试方案-2026-05-20-21-25-19 ## 测试方案文档路径 `工程分析/测试方案-2026-05-20-21-25-19.md` ## 静态检查 - 在 `WebSite/` 执行 `npm run lint`,确认 TypeScript 类型检查通过。 ## 构建检查 - 在 `WebSite/` 执行 `npm run build`,确认 Vite 生产构建通过。 ## 关键业务场景验证 - 项目库进入“逆向分割结果”,确认左右两张图底部对齐。 - 点击项目库三维融合视角“位置重置”,确认出现“三维融合视角已复位”类反馈,视角呈现正向融合观察效果。 - 项目库逆向分割映射视图不再显示“逆向分割映射视图”标题行,不再显示 `Base DICOM`、`Overlay Label Map` 标签。 - 项目库映射视图同一行显示窗宽按钮和位置重置按钮。 - 项目库映射视图黑色画布左上显示“逆向分割映射视图”,右下显示 DICOM 切片位置,右侧只保留竖向进度条。 - 逆向工作区首次进入时,在数据加载完成前显示加载进度、速度和阶段;完成后进入完整工作区。 - 从逆向工作区切到其他模块再返回,确认已加载数据复用缓存,减少重复加载等待。 ## 医学影像数据相关边界验证 - DICOM 切片范围为 300 层时,右侧竖向进度条顶/底/当前值显示正确。 - 切片切换后,DICOM 底图和 Overlay Label Map 仍同步更新。 - 位置重置只改变浏览视口,不改变模型位姿与导出参数。 ## 部署验证 - 使用 `tmux` 会话 `revoxelseg-dicom` 启动: - `cd WebSite` - `npm run serve -- --host 0.0.0.0 --port 4000` - 验证: - `http://127.0.0.1:4000/api/health` - `http://127.0.0.1:4000/` ## Git/Gitea 备份验证 - 检查 `git status --short`,确认只暂存本次相关文件。 - commit message 包含 `2026-05-20-21-25-19` 与简要描述。 - 推送到 Gitea 后确认远端更新成功。 ## 风险与回归关注点 - 项目库紧凑变体不能影响逆向工作区完整编辑态。 - 缓存不能导致项目切换后显示上一个项目的 DICOM/STL 数据。 - 加载页不能在部分非关键数据失败时永久阻塞用户进入工作区。 ## 执行结果 - `npm run lint`:通过。 - `npm run build`:通过,仅保留 Vite 大 chunk 既有提示。 - 重新部署:已重启 `tmux` 会话 `revoxelseg-dicom`,服务监听 `0.0.0.0:4000`。 - `curl -fsS http://127.0.0.1:4000/api/health`:通过,返回 `ok: true`。 - `curl -I -fsS http://127.0.0.1:4000/`:通过,返回 `HTTP/1.1 200 OK`。 - DICOM/项目数据接口抽查:`/api/projects`、`/api/projects/head-ct-demo/dicom-fusion-volume`、`/api/projects/head-ct-demo/dicom-preview` 均有有效响应。 - 页面级截图:使用系统 Chrome 生成 `/tmp/revoxelseg-home.png`,页面可渲染;因当前应用启动时会自动退出登录,未使用无交互截图验证登录后的三维画布。 - 备注:尝试临时安装 `playwright-core` 做交互截图验证,但安装过程无输出且超时,已终止,未产生仓库文件变更。