i4h导管导航冒烟测试Skill i4h-catheter-navigation-smoke

此技能用于在CPU环境下对i4h导管导航工作流中的fluorosim组件和入口点解析器进行冒烟测试,验证导入、CT到mu预处理、CLI参数解析等功能。适用于CI流水线或无GPU的验证场景。关键词:导管导航,冒烟测试,fluorosim,CPU,CI,CT预处理,医疗机器人,i4h。

手术机器人导航 0 次安装 0 次浏览 更新于 9/6/2026
名称 i4h-catheter-navigation-smoke
版本 “0.7.0”
描述 在仅CPU环境下运行fluorosim冒烟测试(导入、预处理、CLI解析器)。当需要在CI或没有GPU的情况下对导管导航进行冒烟测试时使用。
开源协议 Apache-2.0 metadata:
作者 “Isaac for Healthcare Team isaac-for-healthcare-support@nvidia.com” tags: - isaac-for-healthcare - i4h - catheter-navigation - smoke-test - ci

i4h 导管导航 - 冒烟测试

目的

针对fluorosim组件和入口点解析器运行仅CPU的单元冒烟测试,在不需要GPU的CI环境安全使用。测试导入、CT->mu预处理、解析器合理性以及条件视口导入检查。

基础代码

ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"
if [ ! -d "$ROOT/workflows/catheter_navigation" ]; then
  ROOT="${I4H_WORKFLOWS:-$HOME/i4h-workflows}"
  [ -d "$ROOT/workflows/catheter_navigation" ] || git clone https://github.com/isaac-for-healthcare/i4h-workflows "$ROOT"
fi
export I4H_WORKFLOWS="$ROOT"; cd "$ROOT"

运行

步骤1 - 运行测试

REPO_ROOT="${I4H_WORKFLOWS:-$(git rev-parse --show-toplevel 2>/dev/null)}"; [ -d "$REPO_ROOT/workflows/catheter_navigation" ] || REPO_ROOT="$HOME/i4h-workflows"
WF_ROOT="${REPO_ROOT}/workflows/catheter_navigation"
RUN_DIR="${WF_ROOT}/runs/smoke_$(date +%Y%m%d_%H%M%S)"
mkdir -p "${RUN_DIR}/logs"
ln -sfn "${RUN_DIR}" "${WF_ROOT}/runs/.latest"

python3 -m unittest workflows/catheter_navigation/tests/test_fluorosim_smoke.py \
  2>&1 | tee "${RUN_DIR}/logs/smoke.log"

预期输出

Ran N tests in ...s
OK

来自负面CLI测试的stderr上的解析器错误行是预期的 - 不是失败。

验证

grep -E "Ran [0-9]+ tests" "${RUN_DIR}/logs/smoke.log"
grep "OK" "${RUN_DIR}/logs/smoke.log"

前提条件

  • 安装了工作流依赖的Python 3(例如通过 workflows/catheter_navigation/requirements.txt)。
  • 不需要GPU。

限制

  • 不涉及GPU Slang渲染或交互式视口。
  • 对于GPU验证,请使用 [[i4h-catheter-navigation-render-drr]]。

故障排除

  • 错误: 导入失败 - 修复:运行 [[i4h-catheter-navigation-setup]] 并 确保活动虚拟环境已安装导管工作流依赖。
  • 错误: 意外测试数量 - 修复:检查日志;当冒烟测试覆盖范围在分支上添加/删除时, 此数量会变化。

最终响应

报告通过/失败、测试数量和日志路径。如果通过,请注意GPU阶段仍需要单独验证。