OpenClaw 有三个 Vitest 套件(单元/集成、E2E、实时)和一组 Docker 运行器。
快速启动
# 日常使用(推送前运行)
pnpm build && pnpm check && pnpm check:test-types && pnpm test
# 更快的本地全套运行
pnpm test:max
# Watch 模式
pnpm test:watch
# 覆盖率
pnpm test:coverage
# E2E 套件
pnpm test:e2e
# 实时套件(需要真实凭证)
pnpm test:live测试套件说明
单元/集成(默认)
- 命令:
pnpm test - 文件:
src/**/*.test.ts、packages/**/*.test.ts、test/**/*.test.ts - 范围:纯单元测试、进程内集成测试(Gateway 认证、路由、工具、解析、配置)
- 特点:CI 运行,无需真实 Key,快速稳定
E2E(Gateway 冒烟)
- 命令:
pnpm test:e2e - 文件:
src/**/*.e2e.test.ts - 范围:多实例 Gateway 端到端行为、WebSocket/HTTP 接口、节点配对
- 特点:CI 运行,无需真实 Key
实时(真实 Provider + 真实模型)
- 命令:
pnpm test:live - 文件:
src/**/*.live.test.ts - 范围:验证 Provider/模型今天是否正常工作
- 特点:非 CI 稳定,消耗费用/速率限制,优先运行缩小的子集
选择哪个套件
| 场景 | 推荐套件 |
|---|---|
| 编辑逻辑/测试 | pnpm test |
| 触及 Gateway 网络/WS 协议/配对 | pnpm test:e2e |
| 调试”我的 bot 挂了”/Provider 特定失败 | 缩小的 pnpm test:live |
Docker 运行器
pnpm test:docker:live-models # 直接模型冒烟
pnpm test:docker:live-gateway # Gateway + Agent 冒烟
pnpm test:docker:plugins # 插件安装冒烟
pnpm test:docker:upgrade-survivor # 升级幸存者验证
pnpm test:docker:onboard # Onboarding wizard 验证QA 专项运行器
pnpm openclaw qa suite # 在主机上运行 QA 场景
pnpm qa:lab:up # 启动 Docker 支持的 QA 站点
pnpm openclaw qa telegram # Telegram 实时 QA 通道
pnpm openclaw qa matrix # Matrix 实时 QA 通道合约测试
pnpm test:contracts # 所有合约
pnpm test:contracts:channels # 渠道合约
pnpm test:contracts:plugins # Provider 合约文档检查
pnpm check:docs
pnpm docs:check-links:anchors相关链接
- help-testing-live — 实时测试套件
- help-testing-updates-plugins — 更新与插件测试