完善五轴 RTCP 仿真与验证资料

This commit is contained in:
2026-07-01 21:49:58 -04:00
parent ac4e855b2b
commit d0d58998ac
159 changed files with 6771594 additions and 339 deletions

View File

@@ -0,0 +1,74 @@
# 01 测试功能内容
生成日期2026-06-27
## 1. 测试目标
按《Web RTCP 五轴联动数控系统仿真界面操作手册》验证
`/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan` 的核心操作功能,并把可重复执行的测试方法写入
`/home/meswork/cnc_wams/work/working7`
本轮测试目标包括:
- 确认项目可以完成静态构建、Node runtime smoke 和浏览器 smoke。
- 将操作手册中的功能拆分为可追踪测试任务。
- 明确哪些功能已有自动化证据哪些功能后续需要补截图、PDF 或专用脚本证据。
- 保持 Web 仿真安全边界,不把浏览器状态误认为真实 LinuxCNC 实时硬件控制。
## 2. 输入资料
| 类型 | 路径 |
| --- | --- |
| 操作手册 | `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/docs/Web-RTCP五轴数控系统仿真界面操作手册.docx` |
| 项目 README | `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/README.md` |
| 前端 app | `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/app` |
| Node 测试 | `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/tests/node` |
| 浏览器测试 | `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/tests/browser` |
| 既有 QA 证据 | `/home/meswork/cnc_wams/qa/web-rtcp-5axis-site-test/output` |
## 3. 安全边界
本项目是 Web 侧仿真界面,不直接驱动真实机床硬件,不替代 LinuxCNC 实时内核。测试中所有 POWER、HOME、RUN、JOG、MDI、主轴和冷却行为都只验证浏览器仿真状态、Task/HAL WASM 运行时、UI 状态和诊断信息。
验收表述必须保留这些边界:
- 可以说Web UI、store、Task/HAL simulation、LinuxCNC source-derived WASM 运行链路通过测试。
- 不可以说:浏览器已具备真实机床控制能力。
- 可以说:`xyzac-trt``xyzbc-trt` 的 RTCP/TCP 运动学使用 LinuxCNC source-derived WASM 证据。
- 不可以说:`gmoccapy-xyzab``trivkins` reference profile 是 RTCP proof。
## 4. 手册功能拆解
| 功能域 | 手册章节 | 测试内容 | 主要验收点 |
| --- | --- | --- | --- |
| F01 主界面区域 | 2 | titlebar、preview、DRO、G-code、info tabs、override、spindle/coolant、bottom controls、status sidebar | 9 个区域存在,非预览区域有可读状态,预览 canvas ready 且非空。 |
| F02 开机和急停 | 3.1 | E-STOP、RESET、POWER | POWER 后 `powerOn=true`,急停会关闭 power、主轴和冷却按钮 title 显示 gate 原因。 |
| F03 回零 | 3.2 | Home | `allHomed=true`DRO 回到 profile 参考位置AUTO/MDI gate 解除。 |
| F04 模式切换 | 3.3 | AUTO、MANUAL、JOG、MDI | AUTO 激活为绿色且 MANUAL 灰色;切回 MANUAL 时反向成立;未满足前置条件时阻止并提示原因。 |
| F05 AUTO 自动运行 | 4 | LinuxCNC source、Run Ready、Run、Pause、Resume、Step、Stop | G-code 当前行绿色高亮DRO/预览/Task/HAL feedback 同步Stop 后 interpreter idle。 |
| F06 MANUAL 点动 | 5 | X-/X+/Y-/Y+ 和 JOG 入口 | 仅在 power on、manual、idle 条件下允许DRO 对应轴变化Operator 信息记录点动。 |
| F07 MDI | 6 | 输入并执行 MDI 命令 | `machine.mode=mdi`,执行后坐标更新,命令进入 MDI 历史。 |
| F08 RTCP/TCP | 7 | IDENTITY/TCP 切换、M428/M429 switchkins | TCP profile 可切换 RTCP on/offreference-only profile 禁用并说明原因。 |
| F09 倍率和 HAL 输入 | 8 | Rapid、Feed、Limits、Block、M1 | 倍率增减/100 恢复HAL 输入同步到 Web 状态和诊断面板。 |
| F10 主轴和冷却 | 8 | Flood、Mist、FWD、STOP、REV、主轴倍率 | 未上电时阻止,上电后状态切换和倍率更新可见。 |
| F11 程序来源 | 9.1 | Open、LinuxCNC 5-axis source、Stage、Reload | 本地程序或内置 LinuxCNC source 可加载stage 状态可见reload 重置运行状态。 |
| F12 会话保存恢复 | 9.2 | Save Session、Restore Session | 保存 profile、坐标、模式、程序和 UI 状态OPFS 不可用时降级 memory-fallback。 |
| F13 诊断 | 10 | Task policy、INI、Task/HAL、Full boundary、gmoccapy/HAL | 诊断能解释 gate、INI、Task/HAL readiness、source boundary、HAL pins 和 gmoccapy native 边界。 |
## 5. 已有自动化覆盖
| 覆盖项 | 当前证据 |
| --- | --- |
| 构建 | `npm --prefix .../app run build` 输出 `gmoccapy_static_build=ok`。 |
| Node runtime | `smoke:node` 覆盖 kinematics、interpreter、INI、run preconditions、run feedback、Task/HAL、full source、machine staging、session、RTCP、profile boundary、gmoccapy profile/icon/HAL/gate、linear unit。 |
| 浏览器 DOM | `smoke` 覆盖 gmoccapy shell 和 dist 页面验证区域、canvas、profile 切换、按钮图标、模式颜色、G-code 高亮、Task/HAL runtime readiness。 |
| 历史截图/PDF | QA 目录已有 `gmoccapy-xyzab-function-report``button-control-evidence-report` 等 JSON/PDF/截图。 |
## 6. 成功定义
本阶段成功定义:
- `work/working7` 中形成 README、测试功能内容、详细步骤、推进台账、任务矩阵、验收证据和决策记录。
- 构建、Node smoke、浏览器 smoke 均通过,并记录输出标记。
- 手册功能均有任务编号和验收口径。
- 后续如新增截图/PDF/专用脚本,可以按任务矩阵继续推进,不重复拆解同一功能。