Tests
- Vollständiges Test-Kit (Suites, Live, Docker): Testing
-
pnpm test:force: Beendet alle verbliebenen Gateway-Prozesse, die den Standard-Steuerport belegen, und führt anschließend die vollständige Vitest-Suite mit einem isolierten Gateway-Port aus, sodass Servertests nicht mit einer laufenden Instanz kollidieren. Verwenden Sie dies, wenn ein vorheriger Gateway-Lauf den Port 18789 belegt hat. -
pnpm test:coverage: Führt Vitest mit V8-Coverage aus. Globale Schwellenwerte sind 70 % für Zeilen/Branches/Funktionen/Statements. Die Coverage schließt integrationslastige Entry-Points (CLI-Verdrahtung, Gateway/Telegram-Bridges, Webchat-Static-Server) aus, um den Fokus auf unit-testbare Logik zu legen. -
pnpm testunter Node 24+: OpenClaw deaktiviert automatisch VitestvmForksund verwendetforks, umERR_VM_MODULE_LINK_FAILURE/module is already linkedzu vermeiden. Sie können das Verhalten mitOPENCLAW_TEST_VM_FORKS=0|1erzwingen. -
pnpm test:e2e: Führt Gateway-End-to-End-Smoke-Tests aus (Multi-Instance WS/HTTP/Node-Pairing). StandardmäßigvmForks+ adaptive Worker invitest.e2e.config.ts; anpassbar mitOPENCLAW_E2E_WORKERS=<n>und setzen SieOPENCLAW_E2E_VERBOSE=1für ausführliche Logs. -
pnpm test:live: Führt Provider-Live-Tests (minimax/zai) aus. Erfordert API-Schlüssel undLIVE=1(oder anbieterspezifisch*_LIVE_TEST=1), um das Überspringen aufzuheben.
Modell-Latenz-Benchmark (lokale Schlüssel)
Skript:scripts/bench-model.ts
Verwendung:
source ~/.profile && pnpm tsx scripts/bench-model.ts --runs 10- Optionale Umgebungsvariablen:
MINIMAX_API_KEY,MINIMAX_BASE_URL,MINIMAX_MODEL,ANTHROPIC_API_KEY - Standard-Prompt: „Antworten Sie mit einem einzigen Wort: ok. Keine Satzzeichen oder zusätzlichen Text.“
- minimax Median 1279 ms (min 1114, max 2431)
- opus Median 2454 ms (min 1224, max 3170)
Onboarding E2E (Docker)
Docker ist optional; dies wird nur für containerisierte Onboarding-Smoke-Tests benötigt. Vollständiger Cold-Start-Ablauf in einem sauberen Linux-Container:openclaw health aus.
QR-Import-Smoke (Docker)
Stellt sicher, dassqrcode-terminal unter Node 22+ in Docker geladen wird: