Files
REVOXELSEG_DICOM/工程分析/测试方案-2026-06-23-13-38-48.md

71 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 测试方案-2026-06-23-13-38-48
## 测试方案文档路径
`工程分析/测试方案-2026-06-23-13-38-48.md`
## 静态检查
- 执行 `npm run lint`,验证 TypeScript 类型。
- 检查 `ModelPose` 前后端字段一致。
- 检查旧位姿数据默认补齐 `scaleX/scaleY/scaleZ = 1`
## 构建检查
-`WebSite/` 执行 `npm run build`
- 确认 Vite 构建成功。
## 关键业务场景验证
- 逆向工作区仍能加载默认项目、DICOM/STL 和映射视图。
- 现有等比例 `X拉伸/Y拉伸/Z拉伸` 行为保留。
- 新增单轴拉伸在旋转 X/Y/Z 为 90 度整数倍时可用。
- 单轴拉伸某轴后,对应 `平移 X/Y/Z` 自动为 `0`
- 调整统一 `缩放` 后,模型仍保留单轴拉伸比例。
- 点击自动微调匹配时,传入的初始位姿包含单轴拉伸字段。
## 医学影像数据相关边界验证
- 不修改 DICOM/STL 原始数据。
- 不改变 DICOM 切片索引、窗宽窗位和模型文件读取逻辑。
- 验证分割映射和导出使用同一位姿变换,避免前端显示与后端结果不一致。
## 部署验证
- 使用 `tmux` 会话 `revoxelseg-dicom` 重启服务。
- 验证:
- `http://127.0.0.1:4000/api/health`
- `http://127.0.0.1:4000/`
- `http://192.168.3.11:4000/api/health`
- `http://192.168.3.11:4000/`
## Git/Gitea 备份验证
- 暂存本次源码和工程分析文档。
- commit message 包含 `2026-06-23-13-38-48``新增逆向工作区单轴拉伸`
- 使用 `git show --stat --oneline HEAD` 核对提交范围。
## 风险与回归关注点
- 三维模型、二维映射、导出和自动匹配必须使用同一变换顺序。
- 自动匹配候选只改统一缩放和平移时,必须保留单轴拉伸字段不丢失。
- 单轴拉伸控件不能挤压现有左侧融合视图标题栏。
- 旧项目状态文件缺少新字段时必须正常加载。
## 执行结果
- `npm run lint`:通过,`tsc --noEmit` 无错误。
- `npm run build`通过Vite 成功生成 `dist/`;仍有大 chunk 体积提示,不影响本次部署。
- Playwright 桌面视口 `1440x900`:已登录并进入逆向工作区,点击 `X轴` 单轴拉伸按钮;页面包含 `X轴/Y轴/Z轴``轴拉伸 X` 控件;截图 `/tmp/revoxelseg-axis-stretch-desktop.png` 非背景像素约 513328。
- Playwright 移动视口 `420x900`:已登录并进入逆向工作区,点击 `X轴` 单轴拉伸按钮;页面包含单轴拉伸控件;截图 `/tmp/revoxelseg-axis-stretch-mobile.png` 非背景像素约 263176。
- Canvas 检查:桌面/移动视口的 DICOM 与映射 2D canvas 均有非空像素WebGL canvas 截图可见,但 `readPixels` 返回 0判断与 Three.js 默认绘图缓冲行为有关,因此以截图像素统计作为视觉验证补充。
- 部署:已重启 `tmux` 会话 `revoxelseg-dicom`,运行 `NODE_ENV=production npm run serve -- --host 0.0.0.0 --port 4000`
- 端口:`4000` 由当前 Node 进程监听在 `0.0.0.0:4000`
- `http://127.0.0.1:4000/api/health`HTTP 200返回 `ok: true`
- `http://127.0.0.1:4000/`HTTP 200返回 HTML。
- `http://192.168.3.11:4000/api/health`HTTP 200返回 `ok: true`
- `http://192.168.3.11:4000/`HTTP 200返回 HTML。
- `http://127.0.0.1:4000/api/projects`HTTP 200返回项目位姿已自动补齐 `scaleX/scaleY/scaleZ`,旧项目数据兼容。
- Git 备份:本地 commit `e88b40a` 已完成commit message 为 `2026-06-23-13-38-48 新增逆向工作区单轴拉伸`
- Gitea 推送:执行 `git push origin main` 失败,错误为无法读取 `http://192.168.31.5:5002` 的用户名凭据;本次源码与文档已保留在本地 Git 历史中。