2.3 KiB
2.3 KiB
测试方案
开始时间:2026-05-08-02-36-12
本次方案路径
工程分析/测试方案-2026-05-08-02-36-12.md
测试范围
- STL 上传接口。
- ASCII STL 和 binary STL 解析。
- STL 与 DICOM 切片相交 mask 生成。
- 模型切分开启后起点帧/终点帧双图显示。
- 双端点进度条起点/终点可交叉。
- 普通 DICOM 阅览不受影响。
- 前端类型检查、构建和 Python 语法检查。
- 重新部署后访问验证。
测试命令
Python 语法检查:
python -m py_compile web_backend.py head_extension_app.py
前端类型检查:
cd WebSite
npm run lint
前端构建:
cd WebSite
npm run build
后端函数级测试建议:
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
部署验证:
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 坐标配准,需要额外提供配准矩阵或模型平移/缩放/旋转控制。
人工审核状态
用户已明确本次不需要人工二次确认,直接执行。