테스트
- 전체 테스트 키트 (스위트, 라이브, Docker): Testing
-
pnpm test:force: 기본 제어 포트를 점유하고 있는 잔여 gateway 프로세스를 종료한 다음, 격리된 gateway 포트로 전체 Vitest 스위트를 실행하여 서버 테스트가 실행 중인 인스턴스와 충돌하지 않도록 합니다. 이전 gateway 실행으로 인해 포트 18789 가 점유된 상태로 남아 있을 때 사용하십시오. -
pnpm test:coverage: V8 커버리지와 함께 Vitest 를 실행합니다. 전역 임계값은 라인/브랜치/함수/구문 모두 70% 입니다. 커버리지는 통합 비중이 높은 엔트리포인트 (CLI 연결부, gateway/telegram 브리지, webchat 정적 서버) 를 제외하여 단위 테스트 가능한 로직에 목표를 집중합니다. -
Node 24+에서
pnpm test실행 시: OpenClaw는ERR_VM_MODULE_LINK_FAILURE/module is already linked를 방지하기 위해 VitestvmForks를 자동 비활성화하고forks를 사용합니다.OPENCLAW_TEST_VM_FORKS=0|1로 동작을 강제할 수 있습니다. -
pnpm test:e2e: gateway 엔드투엔드 스모크 테스트 (다중 인스턴스 WS/HTTP/node 페어링) 를 실행합니다. 기본값은vitest.e2e.config.ts에서vmForks+ 적응형 워커이며,OPENCLAW_E2E_WORKERS=<n>으로 조정하고 자세한 로그가 필요하면OPENCLAW_E2E_VERBOSE=1을 설정하세요. -
pnpm test:live: 프로바이더 라이브 테스트 (minimax/zai) 를 실행합니다. API 키와LIVE=1(또는 프로바이더별*_LIVE_TEST=1) 가 필요하며, 이를 통해 스킵을 해제합니다.
모델 지연 시간 벤치 (로컬 키)
스크립트:scripts/bench-model.ts
사용법:
source ~/.profile && pnpm tsx scripts/bench-model.ts --runs 10- 선택적 환경 변수:
MINIMAX_API_KEY,MINIMAX_BASE_URL,MINIMAX_MODEL,ANTHROPIC_API_KEY - 기본 프롬프트: “한 단어로만 응답하십시오: ok. 구두점이나 추가 텍스트는 포함하지 마십시오.”
- minimax 중앙값 1279ms (최소 1114, 최대 2431)
- opus 중앙값 2454ms (최소 1224, 최대 3170)
온보딩 E2E (Docker)
Docker 는 선택 사항이며, 컨테이너화된 온보딩 스모크 테스트에만 필요합니다. 깨끗한 Linux 컨테이너에서의 전체 콜드 스타트 플로우:openclaw health 를 실행합니다.
QR 임포트 스모크 (Docker)
Docker 에서 Node 22+ 환경에서qrcode-terminal 가 로드되는지 확인합니다: