Keploy
Open-source platform for creating safe, isolated production sandboxes for API, integration, and E2E testing.
Install / Use
/learn @keploy/KeployREADME
<p align="center"> <a href="https://join.slack.com/t/keploy/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg"><img src="https://img.shields.io/badge/Slack-4A154B?style=flat&logo=slack&logoColor=white" alt="Slack" /></a> <a href="https://www.linkedin.com/company/keploy/"><img src="https://img.shields.io/badge/LinkedIn-%230077B5.svg?style=flat&logo=linkedin&logoColor=white" alt="LinkedIn" /></a> <a href="https://www.youtube.com/channel/UC6OTg7F4o0WkmNtSoob34lg"><img src="https://img.shields.io/badge/YouTube-%23FF0000.svg?style=flat&logo=YouTube&logoColor=white" alt="YouTube" /></a> <a href="https://x.com/Keployio"><img src="https://img.shields.io/badge/X-%231DA1F2.svg?style=flat&logo=X&logoColor=white" alt="X" /></a> </p> <p align="center"> <a href="https://landscape.cncf.io/?item=app-definition-and-development--continuous-integration-delivery--keploy"> <img src="https://img.shields.io/badge/CNCF%20Landscape-5699C6?logo=cncf&style=social" alt="Keploy CNCF Landscape" /> </a> <a href="https://github.com/Keploy/Keploy/stargazers"><img src="https://img.shields.io/github/stars/keploy/keploy?color=%23EAC54F&logo=github" alt="GitHub Stars" /></a> <a href="https://github.com/Keploy/Keploy/"> <img src="https://img.shields.io/github/stars/keploy/keploy?color=%23EAC54F&logo=github&label=Help%20us%20reach%2020K%20stars!%20Now%20at:" alt="Help us reach 20k stars!" /> </a> </p>
Keploy is a developer‑centric API and integration testing tool that auto‑generates tests and data‑mocks faster than unit tests.
It records API calls, database queries, and streaming events — then replays them as tests. Under the hood, Keploy uses eBPF to capture traffic at the network layer, but for you it’s completely code‑less and language‑agnostic.
<img align="center" src="https://raw.githubusercontent.com/keploy/docs/main/static/gif/record-replay.gif" width="100%" alt="Convert API calls to API tests test cases and Data Mocks using AI"/>🐰 Fun fact: Keploy uses itself for testing! Check out our swanky coverage badge:
![]()
Key Highlights
🎯 No code changes
Just run your app with keploy record. Real API + integration flows are automatically captured as tests and mocks. (Keploy uses eBPF under the hood to capture traffic, so you don’t need to add any SDKs or modify code.)
📹 Record and Replay complex Flows
Keploy can record and replay complex, distributed API flows as mocks and stubs. It's like having a very light-weight time machine for your tests—saving you tons of time!
👉 Read the docs on record-replay
<img src="https://raw.githubusercontent.com/keploy/docs/main/static/gif/record-tc.gif" width="60%" alt="Convert API calls to test cases"/>🐇 Complete Infra‑Virtualization (beyond HTTP mocks)
Unlike tools that only mock HTTP endpoints, Keploy records databases (Postgres, MySQL, MongoDB), streaming/queues (Kafka, RabbitMQ), external APIs, and more.
It replays them deterministically so you can run tests without re‑provisioning infra.
👉 Read the docs on infra virtualisation
<img src="https://keploy-devrel.s3.us-west-2.amazonaws.com/Group+1261152745.png" width="100%" alt="Convert API calls to test cases"/>🧪 Combined Test Coverage
If you’re a developer, you probably care about statement and branch coverage — Keploy calculates that for you.
If you’re a QA, you focus more on API schema and business use‑case coverage — Keploy calculates that too. This way coverage isn’t subjective anymore.
<img src="https://keploy-devrel.s3.us-west-2.amazonaws.com/keploy+ai+test+gen+for+api+statement+schema+and+branch+coverage.jpg" width="100%" alt="ai test gen for api statement schema and branch coverage"/>🤖 Expand API Coverage using AI
Keploy uses existing recordings, Swagger/OpenAPI Schema to find: boundary values, missing/extra fields, wrong types, out‑of‑order sequences, retries/timeouts.
This helps expand API Schema, Statement, and Branch Coverage.
<img src="https://keploy-devrel.s3.us-west-2.amazonaws.com/ai+test+case+generation+that+works.png" width="100%" alt="ai test gen for api statement schema and branch coverage"/>Other Capabilities
-
🌐 CI/CD Integration: Run tests with mocks anywhere you like—locally on the CLI, in your CI pipeline (Jenkins, Github Actions..) , or even across a Kubernetes cluster. Read more
-
🎭 Multi-Purpose Mocks: You can also use Keploy-generated Mocks, as server Tests!
-
📊 Reporting: Unified reports for API, integration, unit, and e2e coverage with insights directly in your CI or PRs.
-
🖥️ Console: A developer-friendly console to view, manage, and debug recorded tests and mocks.
-
⏱️ Time Freezing: Deterministically replay tests by freezing system time during execution. Read more
-
📚 Mock Registry: Centralized registry to manage, reuse, and version mocks across teams and environments. Read more
Quick Start
1. Install Keploy Agent
curl --silent -O -L https://keploy.io/install.sh && source install.sh
2. Record Test Cases
Start your app under Keploy to convert real API calls into tests and mocks.
keploy record -c "CMD_TO_RUN_APP"
Example for Python:
keploy record -c "python main.py"
3. Run Tests
Run tests offline without external dependencies.
keploy test -c "CMD_TO_RUN_APP" --delay 10
Resources
- 📘 Installation
- 🏁 QuickStarts
Languages & Frameworks (Any stack)
Because Keploy intercepts at the network layer (eBPF), it works with any language, framework, or runtime—no SDK required.
<p align="center"> <!-- Languages --> <img src="https://img.shields.io/badge/Go-00ADD8?logo=go&logoColor=white" /> <img src="https://img.shields.io/badge/Java-ED8B00?logo=openjdk&logoColor=white" /> <img src="https://img.shields.io/badge/Node.js-43853D?logo=node.js&logoColor=white" /> <img src="https://img.shields.io/badge/Python-3776AB?logo=python&logoColor=white" /> <img src="https://img.shields.io/badge/Rust-000000?logo=rust&logoColor=white" /> <img src="https://img.shields.io/badge/C%23-239120?logo=csharp&logoColor=white" /> <img src="https://img.shields.io/badge/C/C++-00599C?logo=cplusplus&logoColor=white" /> <img src="https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white" /> <img src="https://img.shields.io/badge/Scala-DC322F?logo=scala&logoColor=white" /> <img src="https://img.shields.io/badge/Kotlin-7F52FF?logo=kotlin&logoColor=white" /> <img src="https://img.shields.io/badge/Swift-FA7343?logo=swift&logoColor=white" /> <img src="https://img.shields.io/badge/Dart-0175C2?logo=dart&logoColor=white" /> <img src="https://img.shields.io/badge/PHP-777BB4?logo=php&logoColor=white" /> <img src="https://img.shields.io/badge/Ruby-CC342D?logo=ruby&logoColor=white" /> <img src="https://img.shields.io/badge/Elixir-4B275F?logo=elixir&logoColor=white" /> <img src="https://img.shields.io/badge/.NET-512BD4?logo=dotnet&logoColor=white" /> <!-- Protocols & infra commonly virtualized --> <img src="https://img.shields.io/badge/gRPC-5E35B1?logo=grpc&logoColor=white" /> <img src="https://img.shields.io/badge/GraphQL-E10098?logo=graphql&logoColor=white" /> <img src="https://img.shields.io/badge/HTTP%2FREST-0A84FF?logo=httpie&logoColor=white" /> <img src="https://img.shields.io/badge/Kafka-231F20?logo=apachekafka&logoColor=white" /> <img src="https://img.shields.io/badge/RabbitMQ-FF6600?logo=rabbitmq&logoColor=white" /> <img src="https://img.shields.io/badge/PostgreSQL-4169E1?logo=postgresql&logoColor=white" /> <img src="https://img.shields.io/badge/MySQL-4479A1?logo=mysql&logoColor=white" /> <img src="https://img.shields.io/badge/MongoDB-47A248?logo=mongodb&logoColor=white" /> <img src="https://img.shields.io/badge/Redis-DC382D?logo=redis&logoColor=white" /> </p>Note: Some of the dependencies are not open-source by nature because their protocols and parsings are not open-sourced. It's not supported in Keploy enterprise.
Questions?
Book a Live Demo / Enterprise Support
Want a guided walkthrough, dedicated support, or help planning enterprise rollout?
<p> <a href="https://calendar.app.google/4ZKd1nz9A5wLuP4W7"> <img src="https://img.shields.io/badge/Request%20a%20Demo-Email-2ea44f?logo=gmail" /> </a> <a href="https://join.slack.com/t/keploy/shared_invite/zt-357qqm9b5-PbZRVu3Yt2rJIa6ofrwWNg"> <img src="https://img.shields.io/badge/Chat%20with%20Us-Slack-4A154B?logo=slack&logoColor=white" /> </a> <!-- Optional: replace wit