Was ist Keploy? Record-and-Replay API-Testing

Was ist Keploy? Erfahren Sie, wie seine eBPF-Aufnahme-und-Wiedergabe-Engine automatisch API-Tests und Mocks generiert, die keploy-Befehle 'record' und 'test' sowie seine ehrlichen Grenzen.

Ashley Goolam

Ashley Goolam

17 June 2026

Was ist Keploy? Record-and-Replay API-Testing

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

Wenn Sie nach einer Möglichkeit gesucht haben, API-Tests zu erhalten, ohne sie von Hand zu schreiben, sind Sie wahrscheinlich auf Keploy gestoßen. Es verspricht etwas, das fast zu bequem klingt: Zeigen Sie es auf Ihre laufende Anwendung, lassen Sie es den realen Traffic beobachten, und Sie erhalten eine Testsuite. Was genau macht Keploy also unter der Haube, und wo passt es in Ihren Test-Stack?

Dieser Leitfaden erklärt, was Keploy ist, wie seine Record-and-Replay-Engine auf der eBPF-Netzwerkschicht funktioniert, welche zwei Workflows es bietet, wie man es installiert und ausführt, und welche ehrlichen Grenzen Sie kennen sollten, bevor Sie es einführen.

Schaltfläche

Was ist Keploy

Keploy ist eine Open-Source-Plattform (Apache-2.0-lizenziert) zur Erstellung sicherer, isolierter Produktionssandboxes für API-, Integrations- und End-to-End-Tests. Die Kernidee ist, dass Ihre reale Anwendung bereits das Verhalten ausführt, das Sie testen möchten. Anstatt Sie zu bitten, dieses Verhalten im Testcode zu beschreiben, beobachtet Keploy es und wandelt es in reproduzierbare Tests um.

Es bietet Ihnen zwei Möglichkeiten, dies zu tun:

  1. Aufzeichnen und Wiedergeben erfasst reale API-Interaktionen und deren Abhängigkeiten und spielt sie dann deterministisch wieder ab.
  2. KI-Testgenerierung erstellt validierte API-Testsuiten aus einer Spezifikation, einer Sammlung, einem cURL-Befehl oder einem Live-Endpunkt.

Beide erzeugen ausführbare Tests sowie die Mocks, die benötigt werden, um sie ohne Zugriff auf Live-Abhängigkeiten auszuführen. Das Projekt ist Open Source, sodass Sie den Code lesen und selbst hosten können. Das Repository befindet sich unter github.com/keploy/keploy, und die offiziellen Docs sind unter keploy.io/docs zu finden.

Wie Keploy Record auf der eBPF-Ebene funktioniert

Dies ist der Teil, der Keploy einzigartig macht. Wenn Sie keploy record ausführen, werden Sie nicht aufgefordert, ein SDK hinzuzufügen oder eine einzige Zeile Ihres Anwendungscodes zu ändern. Es erfasst den Datenverkehr auf der Netzwerkschicht mithilfe von eBPF, einer Linux-Kernel-Technologie, die Programmen ermöglicht, Systemereignisse sicher zu beobachten und darauf zu reagieren.

Das bringt Ihnen in der Praxis Folgendes:

Dieser letzte Punkt ist wichtig. Wenn Keploy eine Anfrage aufzeichnet, erfasst es das Gesamtbild: die API-Anfrage, die API-Antwort und jeden Abhängigkeitsaufruf, der dazwischen stattgefunden hat. Aus dieser einzigen beobachteten Interaktion werden dann zwei Artefakte erstellt:

Die Wiederholung schließt den Kreis. Wenn Sie keploy test ausführen, sendet es die aufgezeichneten Anfragen an Ihre Anwendung zurück, stellt die erfassten Abhängigkeitsantworten aus den generierten Mocks bereit und vergleicht die neuen Antworten mit den aufgezeichneten. Eine Abweichung bedeutet, dass sich etwas geändert hat. Deshalb wird dieser Ansatz "Aufzeichnen und Wiedergeben" genannt: Sie zeichnen das reale Laufzeitverhalten einmal auf und spielen es dann deterministisch als Regressionstest bei jeder Änderung wieder ab.

Die zwei Keploy-Workflows

Aufzeichnen und Wiedergeben

Verwenden Sie dies, wenn Sie bereits eine funktionierende Anwendung haben und schnell eine Regressionsabdeckung wünschen. Sie führen die App unter Keploy aus, nutzen sie so, wie es ein echter Benutzer oder Client tun würde (manuelle Aufrufe, ein vorhandener Integrationstest oder Live-Traffic), und Keploy speichert jede Interaktion als Test plus die zugehörigen Mocks. Spätere Läufe spielen diese Interaktionen wieder ab und melden jede Verhaltensänderung.

KI-Testgenerierung

Verwenden Sie dies, wenn Sie eine breitere Abdeckung wünschen, als Ihre manuellen Übungen ergeben haben, oder wenn Sie von einem Vertrag statt von einem laufenden Workflow ausgehen. Keploy kann validierte API-Testsuiten aus einer OpenAPI-Spezifikation, einer Postman-Sammlung, einem cURL-Befehl oder einem Live-Endpunkt generieren. Es mockt Abhängigkeiten automatisch und führt einen automatischen Bereinigungslauf durch, damit keine redundanten Fälle übrig bleiben.

Die beiden Workflows ergänzen sich. Aufzeichnen und Wiedergeben verankert Tests im realen beobachteten Verhalten; KI-Testgenerierung füllt Lücken aus Ihrer Spezifikation. Wenn Sie Tools bewerten, die Tests aus einem Schema generieren, sind unsere Übersicht der KI-Testfallgeneratoren und der Leitfaden zur Generierung von Testskripten aus OpenAPI gute Begleiter.

Keploy installieren

Keploy liefert ein Installationsskript mit. Auf einem unterstĂĽtzten System fĂĽhren Sie aus:

curl --silent -O -L https://keploy.io/install.sh && source install.sh

Dies lädt die Binärdatei herunter und richtet den keploy-Befehl ein. Von dort aus steuern Sie alles über zwei Befehle.

Die wichtigsten Keploy-Befehle

Es gibt zwei Befehle, die Sie am häufigsten verwenden werden. Der erste zeichnet auf:

keploy record -c "CMD_TO_RUN_APP"

Sie übergeben den genauen Befehl, der Ihre Anwendung startet, über -c. Keploy startet Ihre App, überwacht den Datenverkehr, während Sie sie nutzen, und speichert die erfassten Testfälle und Mocks.

Der zweite spielt wieder ab:

keploy test -c "CMD_TO_RUN_APP" --delay 10

Das Flag --delay 10 weist Keploy an, zehn Sekunden zu warten, bevor es die aufgezeichneten Anfragen abfeuert. Dies gibt einem langsameren Dienst genügend Zeit, um vollständig zu starten, bevor die Wiedergabe beginnt. Wenn Ihre App länger zum Starten benötigt, erhöhen Sie die Zahl; wenn sie schnell startet, können Sie sie verringern.

Eine typische erste Sitzung sieht so aus:

# 1. Aufzeichnen, während Sie Ihre API ansteuern
keploy record -c "node server.js"

# 2. Die erfassten Fälle wiedergeben und auf Abweichungen prüfen
keploy test -c "node server.js" --delay 10

Das ist der ganze Ablauf. Einmal gegen einen als gut bekannten Build aufzeichnen, dann bei jeder Änderung keploy test in der CI ausführen.

UnterstĂĽtzte Sprachen, Protokolle und Datenspeicher

Da die Erfassung auf der Netzwerkschicht erfolgt, deckt Keploy eine breite Oberfläche ab:

Kategorie UnterstĂĽtzt
Sprachen Go, Java, Node.js, Python, Rust, C#, C/C++, TypeScript und mehr
Protokolle HTTP/REST, gRPC, GraphQL, Kafka, RabbitMQ
Datenspeicher PostgreSQL, MySQL, MongoDB, Redis

Die Breite ist eine direkte Konsequenz des eBPF-Designs. Keploy liest Netzwerkkommunikation, daher benötigt eine neue Sprache oder ein neues Framework kein neues Plugin, solange es eines dieser Protokolle spricht.

Keploy in CI ausfĂĽhren

Beide Befehle sind für die Automatisierung konzipiert. In einer Pipeline committen Sie die aufgezeichneten Testfälle und Mocks zusammen mit Ihrem Code und führen dann keploy test -c "..." als Schritt aus. Da die Mocks reale Abhängigkeiten ersetzen, benötigt die Wiedergabe keine Live-Datenbank oder einen nachgelagerten Dienst im CI-Runner, was den Job schnell und deterministisch hält. Eine fehlgeschlagene Wiedergabe lässt den Build fehlschlagen, genau wie ein Unit-Test.

Ehrliche Einschränkungen, die zu berücksichtigen sind

Keploy ist stark in dem, was es tut, aber es ist nicht fĂĽr jede Situation geeignet. Eine faire Bewertung berĂĽcksichtigt die Kompromisse:

Nichts davon sind Nachteile für Keploy. Es sind die natürlichen Grenzen seiner Kategorie. Sie zu kennen, hilft Ihnen zu entscheiden, ob es Ihr Problem löst oder nur einen Teil davon.

Wo Apidog als Alternative fĂĽr gezieltes Testen passt

Wenn Ihr Bedarf über „beobachteten Datenverkehr in Regressionstests umwandeln“ hinausgeht, lohnt es sich, eine Full-Lifecycle-Plattform in Betracht zu ziehen. Apidog ist eine All-in-One-API-Plattform, die Design, Debugging, Mocking, Dokumentation und Tests an einem Ort abdeckt. Der Unterschied in der Philosophie ist entscheidend, da Apidog und Keploy in unterschiedlichen Kategorien angesiedelt sind.

Keploy erfasst und spielt reales Laufzeitverhalten, einschließlich Abhängigkeits-Mocks, ohne Code wieder ab. Apidog geht den entgegengesetzten Weg: Sie entwerfen und erstellen wartbare Testszenarien und führen diese dann vom Terminal und der CI mit der Apidog CLI aus. Die CLI führt Ihre erstellten Sammlungen mit datengetriebenem Testen über CSV oder JSON, Umgebungsumschaltung und CLI-, HTML- und JSON-Berichten aus. Apidog bietet auch KI-Testfallgenerierung aus Ihrem API-Schema und Endpunkten, die innerhalb der App erstellt werden, wo sich die beiden Tools überschneiden.

Um die Abgrenzung klar zu formulieren: Apidog erfasst keinen Live-Traffic über eBPF und generiert keine Tests automatisch, indem es Produktionsaufrufe plus Abhängigkeits-Mocks aufzeichnet. Diese Fähigkeit, von realem Traffic aufzuzeichnen, ist tatsächlich Keploys Stärke. Die ehrliche Einschätzung ist, dass Sie je nach Aufgabe wählen. Greifen Sie zu Keploy, wenn Sie Laufzeiterfassung und -wiedergabe ohne Code wünschen. Greifen Sie zu Apidog, wenn Sie entworfene, wartbare Testsuiten innerhalb einer Plattform wünschen, die auch den Rest des API-Lebenszyklus abdeckt. Für einen tieferen Vergleich, siehe Apidog vs. Keploy, und wenn Sie sich für einen Wechsel entschieden haben, behandelt der Migrations-Walkthrough die Übertragung Ihrer Tests.

Wenn Sie wartbare, erstellte API-Tests suchen, können Sie Apidog herunterladen und mit dem Leitfaden zum Testen einer API mit Apidog beginnen.

Häufig gestellte Fragen

Ist Keploy kostenlos und Open Source? Ja. Keploy ist Open Source unter der Apache-2.0-Lizenz, und der Code befindet sich auf GitHub. Sie können es selbst hosten.

Erfordert Keploy eine Änderung meines Anwendungscodes? Nein. Der Aufzeichnungs- und Wiedergabe-Workflow erfasst den Datenverkehr auf der eBPF-Netzwerkschicht, sodass kein SDK hinzugefügt und keine Codeänderungen vorgenommen werden müssen. Das ist auch der Grund, warum es in vielen Sprachen funktioniert.

Was bewirkt das --delay-Flag in keploy test? Es legt fest, wie viele Sekunden Keploy wartet, bevor es aufgezeichnete Anfragen sendet, um Ihrer App Zeit zum Starten zu geben. --delay 10 wartet zehn Sekunden; erhöhen Sie dies für langsam startende Dienste.

Kann Keploy meine Datenbank während der Tests mocken? Ja. Wenn es eine Interaktion aufzeichnet, erfasst es auch die Abhängigkeitsaufrufe (wie Datenbankabfragen) und erstellt Mocks dafür, sodass Wiedergaben ohne eine Live-Datenbank ausgeführt werden.

Ist Keploy ein Ersatz fĂĽr ein API-Design- und Dokumentationstool? Nein. Keploy ist ein Test- und Testgenerierungstool. FĂĽr API-Design, Dokumentation, Mocking fĂĽr Konsumenten und Zusammenarbeit neben dem Testen ist eine Full-Lifecycle-Plattform wie Apidog besser geeignet.

Die Kurzfassung

Keploy ist ein Open-Source-Tool, das reales API-Verhalten in Tests umwandelt. Seine Aufzeichnungs- und Wiedergabe-Engine verwendet eBPF, um Anfragen, Antworten und Abhängigkeitsaufrufe auf der Netzwerkschicht ohne Codeänderungen zu erfassen und sie dann als deterministische Regressionstests wiederzugeben. Seine KI-Testgenerierung erstellt Suiten aus einer Spezifikation oder einem Endpunkt. Es lässt sich schnell einführen und ist sprachunabhängig, mit den Kompromissen eines Linux-zentrierten Erfassungsmodells, Tests, die überprüft werden müssen, und einem auf Tests beschränkten Umfang. Wenn Sie erstellte, wartbare Testsuiten innerhalb einer vollständigen API-Plattform wünschen, ist Apidog die Alternative, mit der Sie es vergleichen sollten.

Schaltfläche

Praktizieren Sie API Design-First in Apidog

Entdecken Sie eine einfachere Möglichkeit, APIs zu erstellen und zu nutzen