3.4 KiB
3.4 KiB
Web Blender 内部子模块一次性烟测计划
范围
本计划承接 34 个产品功能烟测,继续覆盖功能内部的命令和运行时子模块。唯一执行清单是 tests/golden/WBV2/internal-submodule-smoke-plan.json:12 个业务模块、111 条功能绑定归并为 101 个唯一子模块,其中 72 个编辑命令、22 个 JSON 路由、7 个运行时路由。
每个子模块拥有唯一 smokeId,固定 runOnce=true、maxAttempts=1。计划禁止重复 ID、自动重试和全量二次执行;已经通过的子模块只能复用现有证据。
执行顺序
- 复用 34 个产品功能的一次性烟测结果,不重启完整浏览器矩阵。
- 加载一次当前 source-matched WebEngine 构件和最小
.blendfixture。 - 对 72 个编辑命令和 22 个 JSON 路由各发送一次最小请求;成功或按命令自身错误关闭均表示入口已识别,通用
not implemented表示失败。 - 对 7 个运行时路由检查其生产入口,不重复调用浏览器或服务。
- 将失败项移入独立定点修复验证;原始报告保持只读,已通过子模块不重跑。
- 用闭环 checker 核对唯一性、尝试次数、失败集合、修复证据、构件摘要和最终完成数。
一次性约束
- 计划检查:
node tools/web/run-wbv2-submodule-smoke.mjs - 首次执行入口:
node tools/web/run-wbv2-submodule-smoke.mjs --execute - 已有报告时,执行入口必须拒绝再次运行。
- 中断只允许从尚未尝试的用例继续;checkpoint 中
attempts=1的用例必须跳过。 - 定点修复验证只处理首次失败集合,不得转化为第二次全量烟测。
- 完整 API、性能、安全、跨浏览器和发布矩阵不在本次烟测范围内。
执行结果
首次执行共 101 次且无重试:92 项通过,9 项进入定点处理。问题包括 C++ 异常捕获构建选项、Worker NLA 适配识别、相机/渲染外层分发遗漏、五个物理高层命令缺口。
定点处理首次验证解决 8 项;addModifier 进一步暴露 UI 使用 RNA 标识 SUBSURF、原生入口只接受内部标识 Subdivision 的契约不一致。原生入口改为复用快照序列化的同一类型映射后,单独一次回归通过。最终闭环为 101/101,原始烟测次数仍为 101,烟测重试为 0,未解决项为 0。
现有 NLA 生产证据 tests/golden/WBV2-P1112-000/nla-production.json 证明 moveNLAStrip 经 Worker 适配后支持移动、撤销、重做、保存重开和求值;本轮直接复用该证据,没有重复执行浏览器烟测。
证据
- 首次计划:
internal-submodule-smoke-plan.json - 首次报告:
internal-submodule-smoke-report.json - 定点修复:
internal-submodule-smoke-fix-report.json - 单点回归:
internal-submodule-smoke-regression-report.json - 闭环 manifest:
internal-submodule-smoke-manifest.json
闭环检查命令:
node tools/web/check-wbv2-submodule-smoke-plan.mjs