Skip to main content
Glama
Rajendertyagi

MCPEvent

MCP 이벤트 서버 — 테스트 스위트

기능 중심의 빠르고 중단 없는 회귀 테스트로 MCP 이벤트 서버 (server.py, events.py, store.py, runtime.py, sources/)를 대상으로 합니다.

구성

test/
  run_all.py            # regression driver: isolated subprocess per file, hard 300s/file timeout
  helpers/              # lifecycle, mcp, wait, mock_http, runner — shared test support
  mcp_result.py         # SDK result normalization + safe teardown
  test_*.py             # one feature per file (the units of the suite)
  config.json           # base server config (overwritten per-test, restored after)
TEST_RUNTIME_MAP.md     # per-file server usage, harness behavior, run guidance

test/ 아래의 프로덕션 소스는 고정되어 있습니다. — 테스트 작업의 일부로 server.py, events.py, store.py, runtime.py, errors.py, client.py, config.json, requirements.txt, 또는 sources/*를 편집하지 마십시오.

Related MCP server: MCP Server & Client Test Environment

실행

# Focused (preferred while debugging one feature):
python test/test_acknowledgement.py
python test/run_all.py --group fast

# Full regression (CI / release only — slow path):
python test/run_all.py
python test/run_all.py --timeout 300

서버 사용 매트릭스, 제한된 대기 전략, 그리고 개발 중에는 전체가 아닌 집중 테스트를 실행해야 하는 이유는 TEST_RUNTIME_MAP.md를 참조하십시오.

원칙

  • 테스트가 MCP/HTTP 경계를 필요로 하지 않는 한 서버를 사용하지 않습니다. 애플리케이션 로직 (저장소, 이벤트, 라우팅, 체크포인트/확인, 백그라운드 작업, 소스 생명주기, 중복 제거)은 인메모리 스텁 버스를 사용하여 실제 객체에 대해 직접 테스트됩니다.

  • D-레벨 파일당 하나의 서버 (예외: test_errors.py / test_reconnect.py의 재시작 테스트, 그리고 다른 소스 구성을 필요로 하는 테스트가 있는 test_subscriptions.py).

  • 제한된 대기, 긴 고정 절전 없음. 준비/카운트는 시간 제한을 두고 폴링됩니다.

  • 하드 타임아웃(파일당 300초) + 부모 소유 정리 — 실행기가 자식의 프로세스 그룹을 종료하므로, 중단된 파일은 빠르게 실패(TIMEOUT으로 보고)하고, 그 파일이 생성한 server.py도 함께 종료됩니다. 자식의 atexit에 의존하지 않습니다(하드 킬 후에는 실행할 수 없음).

삭제됨 (다시 생성하지 마십시오)

test/test_phase8.py, test/integrate_test.py — 위의 기능별 파일로 대체되었습니다.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A test server implementing all features of the MCP protocol, including prompts, tools, resources, and sampling, designed for testing MCP clients rather than practical applications.
    MIT