Tests
-
Vollständiges Test-Kit (Suites, Live, Docker): Testing
-
pnpm test:force: Beendet alle noch laufenden Gateway-Prozesse, die den Standard-Control-Port belegen, und führt dann die komplette Vitest-Suite mit einem isolierten Gateway-Port aus, damit Server-Tests nicht mit einer laufenden Instanz kollidieren. Nutze das, wenn ein vorheriger Gateway-Lauf Port 18789 belegt hat. -
pnpm test:coverage: Führt Vitest mit V8-Coverage aus. Die globalen Schwellenwerte liegen bei 70 % für Lines/Branches/Functions/Statements. Die Coverage schließt integrationslastige Einstiegspunkte aus (CLI-Verdrahtung, Gateway/Telegram-Bridges, Webchat-Static-Server), um den Fokus auf unit-testbare Logik zu halten. -
pnpm test:e2e: Führt Gateway-End-to-End-Smoke-Tests aus (Multi-Instanz WS/HTTP/Node-Pairing). -
pnpm test:live: Führt Provider-Live-Tests aus (minimax/zai). Benötigt API-Keys undLIVE=1(oder provider-spezifische*_LIVE_TEST=1), um nicht übersprungen zu werden.
Model-Latency-Benchmark (lokale Keys)
Script: 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: “Reply with a single word: ok. No punctuation or extra text.”
Letzter Lauf (31.12.2025, 20 Durchläufe):
- minimax Median 1279 ms (min 1114, max 2431)
- opus Median 2454 ms (min 1224, max 3170)
Onboarding E2E (Docker)
Docker ist optional – das wird nur für containerisierte Onboarding-Smoke-Tests benötigt.
Kompletter Cold-Start-Flow in einem sauberen Linux-Container:
scripts/e2e/onboard-docker.sh
Dieses Script steuert den interaktiven Wizard über ein Pseudo-TTY, verifiziert Config/Workspace/Session-Dateien, startet dann das Gateway und führt openclaw health aus.
QR-Import-Smoke (Docker)
Stellt sicher, dass qrcode-terminal unter Node 22+ in Docker lädt:
pnpm test:docker:qr