并行编排并运行 9 组测试套件,处理构建、启动、重试与汇总。
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "test-all" 技能: 1. 下载 https://raw.githubusercontent.com/facebook/immersive-web-sdk/main/.claude/skills/test-all/SKILL.md 2. 保存为 ~/.claude/skills/test-all/SKILL.md 3. 装好后重载技能,告诉我可以用了
请使用 test-all 技能并行运行全部 9 组测试。先检查 Node 和 pnpm 前置条件,再执行安装、构建、示例准备、启动 dev server、轮询结果、必要时重试,并输出聚合测试报告。
返回每组测试的执行状态、失败项、重试情况,以及最终汇总结果。
请在最新构建产物上运行 test-all。若任一前置步骤失败则停止,并说明失败发生在安装、构建、示例准备还是服务启动阶段。
输出带阶段定位的失败说明,或完整回归测试汇总。
请使用 test-all 重新执行测试,并重点记录各示例目录、dev server 启动情况、动态端口发现结果,以及哪些测试因超时或服务未就绪而失败。
给出面向排障的执行日志摘要和按套件整理的问题清单。
开发者或 DevOps 在发布前需要一次性验证 9 组测试是否全部通过。该技能会并行处理构建、示例准备、服务启动、测试执行与结果汇总。
当多个测试依赖不同示例目录和独立 dev server 时,这个技能可统一编排生命周期并管理并发执行。它还能处理轮询、重试和清理等流程。
如果测试偶发失败,团队可以用它检查前置条件、安装、构建和服务启动是否正常。聚合结果有助于快速判断问题集中在哪个阶段或套件。
文档介绍了一个用于 IWSDK 的并行测试编排器,可同时运行 9 组测试套件,并覆盖构建、示例准备、dev server 启动、子代理执行、轮询、重试、清理和汇总报告等完整流程。节选还列出了测试映射、动态端口发现方式,以及运行前所需的 Node、pnpm、Playwright 和构建步骤。
Runs all 9 IWSDK test suites simultaneously. The orchestrator handles the full lifecycle: build, example prep, dev servers, sub-agent launch, polling, retries, cleanup, and aggregate reporting.
Each test gets its own example directory and dev server. Sub-agents read the skill files and execute tests through the direct npx iwsdk flow described in each skill.
| Agent | Example Dir | Suites | Skill File |
|---|---|---|---|
| test-interactions | examples/poke | 12 | test-interactions/SKILL.md |
| test-ecs-core | examples/poke-ecs | 8 | test-ecs-core/SKILL.md |
| test-environment | examples/poke-environment | 6 | test-environment/SKILL.md |
| test-level | examples/poke-level | 5 | test-level/SKILL.md |
| test-ui | examples/poke-ui | 5 | test-ui/SKILL.md |
| test-audio | examples/audio | 6 | test-audio/SKILL.md |
| test-grab | examples/grab | 5 | test-grab/SKILL.md |
| test-locomotion | examples/locomotion | 6 | test-locomotion/SKILL.md |
| test-physics | examples/physics | 5 | test-physics/SKILL.md |
Ports are not pre-assigned. Each dev server picks its own port dynamically. The orchestrator can discover each active URL from the server logs or npx iwsdk dev status, but the sub-agent skills no longer need the port explicitly.
node -v
pnpm -v
Verify node >= 20.19.0 and pnpm is available. Stop on failure.
pnpm install
cd packages/vite-plugin-dev && npx playwright install chromium && cd ../..
pnpm build:tgz
All must succeed. Stop on failure. Note: npx playwright must run from packages/vite-plugin-dev where playwright is a dependency.
5 tests use the poke example. Clone it into separate directories so each gets its own dev server:
node scripts/test-prep.mjs clone
node scripts/test-prep.mjs install
Start all dev servers, wait for them to be ready, and discover their active URLs. This single command handles everything — starting servers, polling for readiness, and outputting the current port map:
node scripts/test-servers.mjs start
The output is JSON with the current port map: {"poke": 8084, "poke-ecs": 8082, ...}. Keep it for diagnostics, but the sub-agents should rely on the direct CLI flow inside each example directory rather than passing ports around.
If any server fails to start within 60 seconds, the script reports which ones are missing and exits with code 1. Check /tmp/iwsdk-dev-<name>.log for errors.
To re-check ports later without restarting:
node scripts/test-servers.mjs ports
For each test, launch a Task sub-agent with subagent_type: "Bash", mode: "bypassPermissions", and run_in_background: true.
Each sub-agent gets this prompt (with <SKILL_FILE>, <EXAMPLE_DIR>, and <ROOT> substituted):
Read the file at <ROOT>/.claude/skills/<SKILL_FILE> and execute the test instructions
starting from Step 3 (Verify Connectivity). Steps 1 and 2 have already been completed —
the dev server for <EXAMPLE_DIR> is already running.
Execute all test suites (Steps 3-4), then do Step 5 (cleanup and results summary).
Do NOT kill the dev server in cleanup — the parent agent will handle that.
Launch all 9 Task agents in a single message with multiple Task tool calls. This starts them concurrently.
…
它是一个并行测试编排器,可同时运行 9 组 IWSDK 测试套件。它负责构建、示例准备、dev server 启动、子代理执行、轮询、重试、清理和结果汇总。
文档提到需要 Node 版本不低于 20.19.0,并且系统中要可用 pnpm。还需要执行依赖安装,并从 packages/vite-plugin-dev 目录安装 Playwright 的 Chromium。
文档说明端口不是预先分配的,每个 dev server 会动态选择端口。编排器可从服务日志或 `npx iwsdk dev status` 发现活动 URL,子代理不需要显式传入端口。
帮助规划 IWSDK 新功能、系统架构与代码模式,并提供最佳实践建议。
帮助开发者用 iwsdk CLI 测试 XR 交互与面板音频行为是否正常。
使用 iwsdk CLI 测试 Havok 物理系统的重力与刚体行为表现
使用 iwsdk CLI 测试音频示例的加载、播放状态、停止与空间音频功能。
通过 iwsdk CLI 验证 ECS 核心功能与示例运行状态,辅助快速测试排障。
在 XR 场景中定位并点击目标对象,用于验证按钮与交互元素是否正常工作
通过并行执行、批量调用与独立验证通道,加速复杂任务且保持结果正确。
使用 iwsdk CLI 针对 poke 示例测试 UI 系统行为与兼容性。
将缺陷修复流程编排为复现、修复、评审与门禁提交的自动协作任务
通过多智能体流水线自动生成、编写并审查端到端 QA 测试
帮助团队编排多代理协作流程,管理任务归属、看板流转与交接控制。
根据需求生成测试套件,供 AI 助手通过本地接口调用。