6.4 KiB
测试过程
日期:2026-06-27
我本轮的测试目标
我参考了 /home/mes123456/cnc_wams/work/working1 到 /home/mes123456/cnc_wams/work/working7 的历史工作目录,并对 /home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan 做了真实浏览器执行验证。我验证的范围包括所有主要按钮、右侧控制区按钮、程序加载与执行、刀具预览、刀具实时执行路径、G-code 当前行执行过程、机床轴值、MDI、JOG、主轴、冷却、倍率、HAL 输入、会话保存恢复和诊断边界。
我实际执行的命令
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app run build
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app run smoke:node
npm --prefix /home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app run smoke
npm --prefix /home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test run evidence:working7:full
npm --prefix /home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test run evidence:working7
最终结果:
- build:PASS,输出
gmoccapy_static_build=ok。 - Node smoke:PASS,LinuxCNC kinematics/interpreter/INI、Task/HAL、source、session、RTCP、gmoccapy 和单位换算均通过。
- 浏览器 smoke:PASS,输出
gmoccapy_shell_smoke=ok、gmoccapy_dist_smoke=ok。 - 站点回归测试:PASS,
site-test-report.json中 41 个 finding、0 个 FAIL、0 个 WARN。 - 全量功能实测:PASS,
job_id=w7full-20260628002838-518bf522,report_id=report-w7full-20260628002838-518bf522。 - 手册流程复核:PASS,
job_id=w7-20260628002915-30d1c6c8,report_id=report-w7-20260628002915-30d1c6c8。
我发现并修复的问题
-
我发现首屏未上电时主轴、冷却和进给速度初始值不符合安全关闭语义。
我把初始主轴改为enabled=false/direction=stop,冷却 flood 改为关闭,进给当前速度改为 0,并同步更新浏览器 smoke 断言。 -
我发现 Task/HAL 命令回读会覆盖 Web 侧 JOG 和 MDI 的可视轴值,导致实际点击后轴值验证不稳定。
我在 Task/HAL 状态应用链路中加入preserveAxisPose和preserveMachine,让 JOG/MDI 执行后的 axisPose、DRO、mode、interpState 能稳定保留,同时仍记录 Task/HAL 命令执行状态。 -
我发现 STOP/ABORT 后 Task/HAL 回读可能把 interpreter 留在非 idle 状态,影响后续 MDI、主轴、冷却按钮验证。
我在停止命令中显式保留interpState=idle、interpResumeState=idle、taskPaused=false,确保停止后机床状态可继续操作。 -
我发现
gmoccapy-xyzab是 reference-only profile,证据脚本等待 INI/RTCP proof 会误判。
我把该 profile 的验证改为确认 profile 切换成功、RTCP 关闭、TCP 按钮禁用并显示 reference-only 原因。 -
我发现全量报告里曾出现 404 console 噪声。
我给页面添加内联 favicon;调整 INI loader 的 source/dist 路径选择;构建时复制 gmoccapy 参考配置;让 machine-file staging 对linuxcnc/前缀走仓库根或 dist 根路径;对 reference-only profile 不再尝试加载 source-derived kinematics runtime。最终 full/manual 两份报告均为consoleErrors=0、networkErrors=0、pageErrors=0。 -
我发现旧 working7 手动流程脚本仍按冷却 flood 初始开启来判断。
我同步脚本断言:安全初始状态为关闭,点击 Flood 后变为开启。 -
我发现旧站点回归脚本默认测试远端页面,并且 Puppeteer 直接持有按钮节点点击,页面重渲染时会出现
Node is detached from document。
我把run-site-test.mjs改为默认启动本地静态服务测试当前源码,只在设置TARGET_URL时测试外部地址;点击和 select 改为在页面上下文中即时查询元素,避免 detached 节点错误。 -
我发现旧站点回归报告中的 STEP 和 Restore Session 失败来自测试口径和操作流程不完整。
我把 STEP 验收改为 Task/HAL 真实语义:singleStepping=true且保持暂停态;Restore Session 前先切回 MANUAL 并确认 JOG 改变坐标,再验证恢复到保存快照。
我生成的图文报告
全量功能图文报告:
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-full-functional-evidence-report.md
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-full-functional-evidence-report.pdf
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-full-functional-evidence-report.json
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-full-functional-evidence
全量报告使用第一人称描述,包含 19 张截图和 73 个实际执行动作,截图包括主界面、门禁、上电回零、右侧按钮、profile、刀具预览、程序来源、Open、Run Ready、实时路径、暂停继续单步、停止、JOG 轴值、MDI、倍率/HAL、主轴冷却、会话/Full 和诊断。
手册流程复核报告:
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-manual-flow-evidence-report.pdf
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-manual-flow-evidence-report.json
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/output/working7-manual-flow-evidence
我修改的主要文件
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/package.json
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/capture-working7-full-functional-evidence.mjs
/home/mes123456/cnc_wams/qa/web-rtcp-5axis-site-test/capture-working7-manual-flow-evidence.mjs
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/index.html
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/scripts/build-static.mjs
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/src/main.js
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/src/runtime/linuxcnc-ini-runtime.js
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/src/runtime/linuxcnc-machine-file-staging.js
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/app/src/state/store.js
/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/tests/browser/gmoccapy_shell_smoke.html
/home/mes123456/cnc_wams/work/working7/*
我的最终结论
我已经对目标项目完成了真实浏览器执行验证和回归验证。全量功能报告和手册流程报告均为 PASS,且最终报告没有 console、network 或 page error。当前验证结论仍限定在 Web 仿真和 WASM/Task/HAL simulation 边界内,不声明真实机床硬件控制能力。