# 测试方案 开始时间:2026-05-08-02-36-12 ## 本次方案路径 `工程分析/测试方案-2026-05-08-02-36-12.md` ## 测试范围 - STL 上传接口。 - ASCII STL 和 binary STL 解析。 - STL 与 DICOM 切片相交 mask 生成。 - 模型切分开启后起点帧/终点帧双图显示。 - 双端点进度条起点/终点可交叉。 - 普通 DICOM 阅览不受影响。 - 前端类型检查、构建和 Python 语法检查。 - 重新部署后访问验证。 ## 测试命令 Python 语法检查: ```bash python -m py_compile web_backend.py head_extension_app.py ``` 前端类型检查: ```bash cd WebSite npm run lint ``` 前端构建: ```bash cd WebSite npm run build ``` 后端函数级测试建议: ```bash python - <<'PY' from web_backend import parse_stl_bytes sample = b'''solid demo facet normal 0 0 1 outer loop vertex 0 0 0 vertex 10 0 0 vertex 0 10 0 endloop endfacet endsolid demo ''' triangles = parse_stl_bytes(sample) print(triangles.shape) PY ``` 部署验证: ```bash curl -I --max-time 5 http://192.168.3.11:3005/ curl -s --max-time 10 "http://127.0.0.1:8787/api/library/reformat-preview?id=demo_ori_head_ct&plane=coronal&index=256&window=bone" ``` ## 手工验证点 - 打开 DICOM 阅览,普通冠状位/矢状位切片仍可查看。 - 上传 STL 后启用模型切分。 - 使用一个双端点进度条调节起点/终点帧。 - 将起点拖过终点或终点拖过起点后,界面仍能按两个端点显示切分结果。 - 起点帧和终点帧上显示真实 STL 切面 mask;无交集时不显示假 mask。 - 不再出现单独无意义的 CT MASK 图片。 ## 验收标准 - STL 上传返回模型信息。 - 带 `modelId` 的 `/api/library/reformat-preview` 可返回叠加 mask 的 PNG。 - `python -m py_compile web_backend.py head_extension_app.py` 通过。 - `npm run lint` 通过。 - `npm run build` 通过。 - Gitea commit/push 完成。 - 重新部署后 `http://192.168.3.11:3005/` 返回 `200 OK`。 ## 残余风险 - mask 是否精确覆盖目标结构取决于 STL 与 DICOM 是否同坐标系、同单位、同方向。如果 STL 未与 DICOM patient 坐标配准,需要额外提供配准矩阵或模型平移/缩放/旋转控制。 ## 人工审核状态 用户已明确本次不需要人工二次确认,直接执行。