用途:在仓库根目录运行 evm-wallet 的 Docker 端到端测试,覆盖构建、启动服务栈、等待健康、执行测试与失败诊断。
主要能力与用法:
- 检查 Docker 是否运行:docker info 2>&1 | head -5;若失败需提示用户启动 Docker Desktop 或守护进程并等待确认。
- 构建仓库与镜像:yarn workspace @ocap/evm-wallet-experiment docker:build 2>&1 | tail -30,先构建整个 monorepo 再构建镜像,可能耗时数分钟。
- 先拆除旧栈再启动:yarn workspace @ocap/evm-wallet-experiment docker:down 2>&1 | tail -10,然后 yarn workspace @ocap/evm-wallet-experiment docker:ensure-logs && yarn workspace @ocap/evm-wallet-experiment docker:compose up -d 2>&1 | tail -20。
- 等待 8 个服务全部 healthy:每 10 秒轮询一次,最多 3 分钟(18 次),使用 docker:ps 统计 (healthy) 数量;超时则输出最后一次 docker:ps 并停止,不继续测试。
- 运行测试:yarn workspace @ocap/evm-wallet-experiment test:e2e:docker 2>&1 | tail -80,vitest 同时将结构化结果写入 packages/evm-wallet-experiment/logs/test-results.json。
- 诊断失败:先查看 test-results.json 中 testResults 数组的失败项与错误信息,再查看 packages/evm-wallet-experiment/logs/ 下相关服务日志,如 evm.log(Anvil 链上错误)、各 bundler 与 peer-relay 日志,优先看失败测试涉及的服务对,再看 evm.log。
适用场景:本地或 CI 中验证 evm-wallet 实验的 Docker 端到端流程。
限制:需 Docker 可用;服务需全部 healthy 才能继续;命令须在仓库根目录执行;具体测试内容与断言未在资料中提供。