keploy/keploy
eBPF로 실제 트래픽 녹화해 테스트 생성하는 Keploy
원제 keploy/keploy
스타 19,268당일 +204Go
Key Point
코드 수정 없이 실제 트래픽에서 API·통합·E2E 테스트를 자동 생성하므로, 테스트 작성 시간과 모킹 구축 비용을 크게 줄일 수 있고, 데이터베이스·메시지 큐 등 전체 인프라를 가상화해 격리된 테스트 환경을 빠르게 확보할 수 있습니다.
핵심 요약
- Keploy는 eBPF를 이용해 네트워크 계층에서 API 호출·데이터베이스 쿼리·스트리밍 이벤트를 자동 포착해 테스트와 데이터 모킹을 생성하는 오픈소스 API·통합 테스트 도구다.
- 코드 수정 없이 앱을 `keploy record`로 실행하기만 하면 실제 API와 통합 흐름이 자동으로 테스트·모킹되며, SDK 추가나 코드 변경이 전혀 필요 없다.
- HTTP 엔드포인트만 모킹하는 도구와 달리 Keploy는 PostgreSQL·MySQL·MongoDB 같은 데이터베이스와 Kafka·RabbitMQ 같은 스트리밍·큐, 외부 API 등 전체 인프라를 가상화해 테스트 중에 재프로비저닝 없이 재현한다.
- 개발자용 코드 커버리지(statement·branch)와 QA용 API 스키마·비즈니스 유스케이스 커버리지를 동시에 계산해 커버리지를 객관화하며, 기존 기록과 OpenAPI 스키마를 바탕으로 경계값·누락 필드·타입 오류 등을 찾는 AI 기반 커버리지 확장 기능도 제공한다.
- CLI에서 로컬 실행, Jenkins·GitHub Actions 같은 CI/CD 파이프라인 통합, Kubernetes 클러스터 배포 등 다양한 환경에서 모킹된 테스트를 실행할 수 있다.
- 생성된 모킹을 서버 테스트로 재활용할 수 있으며, 시스템 시간을 고정해 결정론적 재현을 보장하고, 팀과 환경 간 모킹을 관리·재사용·버전 관리할 수 있는 중앙 모킹 레지스트리를 제공한다.
- 언어나 프레임워크 제약 없이 모든 스택에서 동작하며(eBPF로 네트워크 계층에 개입하기 때문), CI나 PR에서 직접 조회할 수 있는 통합 리포팅 및 개발자 친화적 콘솔을 통해 기록된 테스트와 모킹을 관리·디버깅할 수 있다.
저장소 보기 ↗github.com