2.0 KiB
2.0 KiB
测试方案 - 2026-05-07-18-42-53
静态检查
- 执行
npm run lint,确认 TypeScript 类型检查通过。 - 执行
npm run build,确认生产构建通过。
单元或集成测试
- 使用现有 API 和页面构建流程做集成验证:
GET /api/projects返回项目数据且包含共享moduleStyles。PATCH /api/projects/:projectId/module-styles可保存构件 ID。- 重新读取项目后构件 ID 保持一致。
关键业务场景验证
- 项目库 3D 模型构件层级修改 ID 后,进入逆向工作区可视化工具栏显示同一 ID。
- 逆向工作区修改 ID 后,返回项目库 3D 模型显示同一 ID。
- 可视化工具栏不再显示 Metadata。
- 融合视角下方只有一个 DICOM 切片范围滑条,不再暴露起点/终点输入。
- 位姿控制区域标题显示“模型位姿”。
医学影像数据相关边界验证
- 切片范围滑条最小值不小于 1,最大值不超过 DICOM 总切片数。
- API 请求仍使用合理
start/end,避免空体数据。 - 构件 ID 限定为
1~255,防止与背景0冲突。
回归风险
- 共享 moduleStyles 可能影响已有颜色、透明度、显示隐藏控制。
- 融合体请求频繁变化可能导致加载状态更新较频繁。
人工审核状态
用户已声明本次不需要二次人工确认,按默认执行确认规则直接执行。
执行结果
npm run lint:通过。npm run build:通过,仅保留 Vite 大 chunk 体积提醒。- 重新部署:已通过
tmux重启revoxelseg-dicom服务,运行在http://0.0.0.0:4000/。 curl -I http://127.0.0.1:4000/:返回HTTP/1.1 200 OK。GET /api/projects/head-ct-demo:返回默认项目,包含 9 个 STL 构件的moduleStyles。PATCH /api/projects/head-ct-demo/module-styles:可修改构件 ID 和可见性。- 构件 ID 边界:提交
partId=0后服务端返回partId=1,符合不可修改为 0 的约束。