피드로 돌아가기
imnot: a YAML-defined stateful API mock server for external system integrations
Dev.toDev.to
Backend

YAML 기반 Stateful API Mocking으로 통합 테스트 리드타임 단축

imnot: a YAML-defined stateful API mock server for external system integrations

Eduardo Sanhueso2026년 4월 17일6intermediate

Context

Apache NiFi를 활용한 기존 Mocking 방식은 특정 전문가의 지식에 의존하는 운영 병목 현상 발생. Mock 설정이 버전 관리 대상에서 제외되어 통합 코드와의 정렬이 어렵고, 복잡한 Async Flow 구현 시 개발 공수가 과다하게 투입되는 한계 직면.

Technical Solution

  • YAML 정의 기반의 Declarative State Machine 설계를 통한 API 시퀀스 모델링
  • POST 요청 시 ID 생성 및 Header 전파를 통한 Stateful한 단계별 요청 추적 구조 구현
  • FastAPI의 Dynamic Route Registration을 활용해 런타임에 Endpoint를 자동 생성하는 메커니즘 적용
  • SQLite 기반의 Session Store를 도입하여 인프라 복잡도를 최소화한 상태 저장소 구축
  • LLM 친화적인 단순 스키마 설계를 통해 OpenAPI Spec으로부터 Mock 정의서를 자동 생성하는 AI-ready 파이프라인 구축
  • Docker 기반 배포 및 EKS 클러스터 통합으로 팀 전체가 공유 가능한 중앙 집중형 Mock 환경 제공

- 복잡한 B2B 통합 테스트 시 Stateless Mock 대신 Sequence 기반의 Stateful Mock 도입 검토 - 인프라 설정보다 설정 파일(YAML/JSON) 중심의 선언적 설계를 통해 비개발자의 참여도 확대 - 전문 도구(NiFi 등)의 범용성보다 특정 유스케이스에 최적화된 경량 도구 구축을 통한 운영 효율화 - LLM이 생성하기 쉬운 단순하고 명확한 스키마 설계로 설정 자동화 구현

원문 읽기