51 lines
2.0 KiB
Markdown
51 lines
2.0 KiB
Markdown
# 测试方案-2026-05-20-22-35-42
|
||
|
||
## 测试方案文档路径
|
||
|
||
`工程分析/测试方案-2026-05-20-22-35-42.md`
|
||
|
||
## 静态检查
|
||
|
||
- 执行 `cd WebSite && npm run lint`,确认 TypeScript 类型检查通过。
|
||
- 使用 `rg` 检查旧文案 `Overlay Label Map ·` 是否仍残留在可见 UI。
|
||
|
||
## 构建检查
|
||
|
||
- 执行 `cd WebSite && npm run build`,确认生产构建通过。
|
||
|
||
## 关键业务场景验证
|
||
|
||
- 导出面板初始状态:`DICOM 原始影像` 与 `STL 原始模型` 不勾选,二者排在上方,`分割影像`在下方。
|
||
- 勾选分割影像时显示“构件整体导出 / 构件分别导出”选项,并将选择传入后端。
|
||
- 系统管理编辑用户账号为已有账号时,页面展示友好错误提示。
|
||
- 新建无 DICOM 项目时,DICOM 预览区域显示“请导入DICOM影像”。
|
||
- DICOM 与 STL 导入按钮可以唤起文件选择并调用导入接口。
|
||
- 逆向工作区无保存结果时初次加载默认执行 Z 轴拉伸;已有保存结果不被覆盖。
|
||
|
||
## 医学影像数据相关边界验证
|
||
|
||
- 上传导入写入 `WebSite/data/uploads/<projectId>/`,不写入默认 `Head_CT_DICOM/` 与 `Head_CT_ReConstruct/`。
|
||
- 默认演示项目重置后仍回到 300 张 DICOM 与默认 9 个 STL 构件。
|
||
- 分构件导出时保留构件 ID 与标签 JSON,避免重叠构件在单一 label map 中互相覆盖。
|
||
|
||
## 部署验证
|
||
|
||
- 使用 `tmux` 会话 `revoxelseg-dicom` 重启服务:
|
||
- `cd WebSite`
|
||
- `npm run serve -- --host 0.0.0.0 --port 4000`
|
||
- 验证:
|
||
- `curl http://127.0.0.1:4000/api/health`
|
||
- `curl -I http://127.0.0.1:4000/`
|
||
|
||
## Git/Gitea 备份验证
|
||
|
||
- `git status --short` 检查仅暂存本次相关源码和文档。
|
||
- commit message 包含 `2026-05-20-22-35-42`。
|
||
- `git push` 推送到 Gitea 后确认成功。
|
||
|
||
## 风险与回归关注点
|
||
|
||
- 避免上传文件体积过大导致请求失败时没有用户提示。
|
||
- 避免项目级 STL 路径解析遗漏,导致预览可用但导出失败。
|
||
- 避免默认 Z 拉伸重复触发,引起位姿越拉越大。
|