Wenn Sie APIs spec-first entwickeln, müssen Sie früh entscheiden: Soll ein Tool Ihre OpenAPI-Datei als ausführbaren Vertrag prüfen, oder soll es den gesamten Workflow aus Design, Mocking, funktionalen Tests und CI-Ausführung abdecken? Specmatic und die Apidog CLI arbeiten beide spezifikationsbasiert, lösen aber unterschiedliche Probleme. Dieser Leitfaden zeigt, wann welches Tool passt, wie Sie es in der Pipeline einsetzen und worauf Sie bei API-Vertragstests nach OpenAPI-Spezifikation achten sollten.
Die Kurzfassung
Specmatic behandelt Ihre API-Spezifikation als ausführbaren Vertrag. Es erzeugt Tests aus der Spezifikation, führt Ihren laufenden Provider dagegen aus und kann dieselbe Spezifikation als Stub bereitstellen. Das ist besonders nützlich, wenn mehrere Teams unabhängig deployen und Konsumenten/Provider-Verträge zuverlässig geprüft werden müssen.
Apidog ist eine Spec-First-API-Plattform. Sie entwerfen APIs visuell auf Basis von OpenAPI, starten schemagesteuerte Mocks, erstellen funktionale Testszenarien und führen diese in CI mit apidog run aus. Der Workflow deckt REST, GraphQL, gRPC, WebSocket und weitere API-Typen ab.
Die Entscheidung ist daher weniger „Tool A ersetzt Tool B“, sondern eher:
- Specmatic, wenn Vertragsverifizierung zwischen Diensten Ihr Hauptproblem ist.
- Apidog CLI, wenn Sie Design, Mocking, funktionale Tests und CI-Ausführung in einem Workflow bündeln möchten.
- Beide zusammen, wenn Sie Lebenszyklusabdeckung und strikte Vertragskontrolle brauchen.
Was Specmatic gut kann
Specmatic setzt auf Contract-as-Code: Ihre Spezifikation ist der Vertrag, und dieser Vertrag wird ausführbar gemacht. Sie verweisen Specmatic auf eine OpenAPI-, AsyncAPI-, GraphQL-, gRPC- oder WSDL-Datei. Daraus werden automatisch positive und negative Tests abgeleitet.
Typischer Ablauf:
- API-Spezifikation versionieren, z. B.
openapi.yaml. - Provider lokal oder in CI starten.
- Specmatic gegen den laufenden Service ausführen.
- Build fehlschlagen lassen, wenn Implementierung und Spezifikation abweichen.
Beispielhaftes CI-Muster:
# Service starten
npm run start:test &
# Vertrag gegen laufenden Provider prüfen
specmatic test --config specmatic.yaml
Zwei Fähigkeiten sind besonders wichtig:
Provider-Verifizierung
Specmatic prüft, ob der laufende Dienst das erfüllt, was die Spezifikation verspricht. Beispiele für Fehler, die ein Vertragstest aufdecken kann:
- Ein erwartetes Feld fehlt in der Response.
- Ein Statuscode weicht von der Spezifikation ab.
- Ein Datentyp passt nicht zum Schema.
- Ein Fehlerfall ist nicht wie dokumentiert implementiert.
Das ist hilfreich, wenn eine Änderung an einem Provider sonst erst spät bei einem Konsumenten auffallen würde.
Dienst-Virtualisierung
Dieselbe Spezifikation kann als Stub laufen. Konsumententeams können gegen diesen Stub entwickeln, ohne auf den echten Provider warten zu müssen. Da Stub und Tests aus demselben Vertrag entstehen, bleibt die Spezifikation die gemeinsame Quelle der Wahrheit.
Specmatic ist im Kern Open Source, läuft per CLI in CI/CD und bietet zusätzliche kommerzielle Komponenten wie Studio und Insights. Neben REST unterstützt es auch AsyncAPI, GraphQL, gRPC, WSDL sowie Messaging-Backends wie Kafka, JMS und RabbitMQ.
Die Einschränkung ist bewusst: Specmatic ist kein vollständiges API-Design- oder funktionales Test-Tool. Es wird stark, sobald eine Spezifikation existiert und deren Einhaltung automatisiert erzwungen werden soll.
Was die Apidog CLI gut kann
Die Apidog CLI ist der Kommandozeilen-Runner für Apidog-Projekte. Sie entwerfen und testen APIs in der Apidog-App und führen diese Szenarien anschließend kopflos in CI aus. Details zu Flags, Exit-Codes und Ausführung beschreibt die apidog run Befehlsreferenz.
Ein typischer Apidog-Workflow sieht so aus:
- API in Apidog spec-first entwerfen.
- OpenAPI-Schema als gemeinsame Basis nutzen.
- Mock-Server aus dem Schema starten.
- Funktionale Testszenarien mit Assertions erstellen.
- Szenarien mit
apidog runin CI ausführen. - Pipeline anhand der Exit-Codes bestehen oder fehlschlagen lassen.
Beispielhafter CI-Schritt:
apidog run \
--project-id "$APIDOG_PROJECT_ID" \
--access-token "$APIDOG_ACCESS_TOKEN" \
--env-id "$APIDOG_ENV_ID"
Spec-First-Design, Mock und Test in einem Projekt
In Apidog erstellen Sie die OpenAPI-Definition visuell, erzeugen daraus einen schemagesteuerten Mock und schreiben Tests gegen reale oder gemockte Antworten. Mock und Tests lesen aus derselben Spezifikation. Dadurch reduzieren Sie Drift zwischen Design, Dokumentation und Validierung.
Der Schema-First-Mock-Workflow zeigt, wie dieser Ansatz praktisch zusammenspielt.
Funktionale Testszenarien
Apidog beschränkt sich nicht auf „Response entspricht Schema“. Sie können End-to-End-Flows abbilden, zum Beispiel:
- Benutzer anlegen.
- ID aus der Response extrahieren.
- Benutzer per ID abrufen.
- Felder und Statuscode prüfen.
- Benutzer aktualisieren.
- Cleanup-Request ausführen.
Solche Szenarien sind besonders nützlich, wenn API-Verhalten über mehrere Requests hinweg geprüft werden soll.
Beispielhafte Assertions:
Statuscode ist 201
Response-Feld $.id existiert
Response-Feld $.email entspricht der Testdaten-E-Mail
Header Content-Type enthält application/json
Mehrere Protokolle im selben Workflow
Apidog unterstützt REST, GraphQL, gRPC, SOAP und WebSocket. Das ist relevant, wenn Ihr System nicht nur klassische REST-Endpunkte enthält, Sie aber trotzdem einen einheitlichen Test- und CI-Prozess wollen.
CI-Ausführung mit apidog run
Die Apidog CLI gibt Exit-Codes zurück und erzeugt Berichte, die in CI-Systemen genutzt werden können. Damit lässt sich die Suite in GitHub Actions, GitLab CI, Jenkins oder andere Pipelines integrieren. Der vollständige Apidog CLI-Leitfaden führt durch einen kompletten Pipeline-Durchlauf.
Die Einschränkung: Apidog ist kein Pact-ähnlicher Contract Broker für formelle Consumer-Driven-Contracts zwischen getrennten Konsumenten- und Provider-Repositories. Es validiert API-Antworten gegen Schemas und führt funktionale Tests aus, ersetzt aber keinen Broker-Handshake, wenn genau dieser Ihr Ziel ist.
Gegenüberstellung
| Bereich | Specmatic | Apidog CLI |
|---|---|---|
| Primärer Schwerpunkt | Contract-as-Code: Provider-Verifizierung gegen Spezifikation, Contract-as-Stub | Spec-First-Design, Mock, funktionale Tests, CI-Ausführung |
| Testgenerierung | Automatische Generierung positiver und negativer Tests aus der Spezifikation | Szenarien werden visuell erstellt; Schema-Validierung ist integriert |
| Provider/Konsument-Vertragsverifizierung | Kernstärke | Schema-Validierung, kein Contract Broker |
| Mocking | Dienst-Virtualisierung aus dem Vertrag | Schemagesteuerter Mock-Server aus dem OpenAPI-Design |
| Protokolle | OpenAPI, AsyncAPI, GraphQL, gRPC, WSDL, Messaging wie Kafka und JMS | REST, GraphQL, gRPC, SOAP, WebSocket |
| Schnittstelle | CLI plus kommerzielles Studio/Insights | Visuelle App plus apidog run CLI |
| Funktionale/E2E-Flows | Fokussiert auf Vertragsszenarien | Stark bei verketteten Schritten, Assertions und datengesteuerten Läufen |
| Open Source | Ja, Kernkomponente | Kostenlose Stufe; Plattform ist kommerziell |
| Am besten für | Unabhängige Dienste gegen einen gemeinsamen Vertrag prüfen | APIs über Design, Mocking, Tests und CI hinweg entwickeln |
Wann Sie welches Tool wählen sollten
Wählen Sie Specmatic, wenn Vertragsbrüche Ihr Hauptproblem sind
Specmatic passt gut, wenn mehrere Teams Services unabhängig deployen und sich Schnittstellen häufig ändern. In diesem Setup wollen Sie früh erkennen, ob ein Provider noch das liefert, was Konsumenten erwarten.
Praktische Einsatzfälle:
- Ein Backend-Team ändert Response-Felder und gefährdet Frontend- oder Service-Konsumenten.
- Mehrere Microservices teilen sich versionierte Verträge.
- Konsumenten sollen gegen Stubs entwickeln können, bevor Provider fertig sind.
- CI soll fehlschlagen, sobald Implementierung und Spezifikation auseinanderlaufen.
Wählen Sie Apidog CLI, wenn Sie einen API-Lifecycle-Workflow brauchen
Apidog passt gut, wenn Sie eine API schneller entwerfen, mocken, testen und in CI absichern möchten. Statt Design-Tool, Mock-Tool und Test-Runner separat zu verbinden, arbeiten alle Schritte auf derselben Spezifikation.
Praktische Einsatzfälle:
- Frontend-Teams benötigen einen Mock, bevor das Backend fertig ist.
- QA oder Entwickler erstellen funktionale API-Tests ohne viel Testcode.
- Eine Pipeline soll bei fehlerhaften API-Szenarien fehlschlagen.
- REST, gRPC oder WebSocket sollen über denselben Prozess getestet werden.
Der Leitfaden zu Vertragstests und Mock-Servern erklärt, wie Design, Mock und Verifizierung zusammenhängen.
Entscheidungs-Checkliste
Nutzen Sie diese Fragen als schnelle Auswahlhilfe:
Brechen Dienste regelmäßig gegenseitig ihre Verträge?
Dann ist Specmatic wahrscheinlich der bessere erste Schritt.Müssen Sie APIs schneller entwerfen, mocken und funktional testen?
Dann passt Apidog besser.Brauchen Sie automatische Vertragsprüfungen aus Spezifikationen?
Specmatic ist darauf spezialisiert.Brauchen Sie verkettete API-Flows, Assertions und CI-Reports?
Apidog CLI ist dafür der passendere Workflow.Gibt es sowohl Team-übergreifende Vertragsprobleme als auch Bedarf an Lifecycle-Tests?
Dann können beide Tools sinnvoll kombiniert werden.
Können Sie Specmatic und Apidog zusammen verwenden?
Ja. Ein pragmatisches Setup ist:
- OpenAPI-Datei als Source of Truth verwenden.
- API in Apidog entwerfen und iterieren.
- Mock-Server in Apidog für Konsumenten bereitstellen.
- Funktionale Testszenarien in Apidog erstellen.
- Tests mit
apidog runin CI ausführen. - Specmatic für formelle Provider-Vertragsverifizierung ergänzen.
So decken Sie zwei Ebenen ab:
- Apidog für Design, Mocking, funktionale Tests und CI-Ausführung.
- Specmatic für strikte Vertragsverifizierung und Dienst-Virtualisierung zwischen Teams.
Beide Tools überschneiden sich im Spec-First-Ansatz, aber nicht im Schwerpunkt. Kombiniert erhalten Sie breite Lifecycle-Abdeckung und engere Kontrolle über Vertragsabweichungen.
Häufig gestellte Fragen
Ist Apidog eine Specmatic-Alternative?
Teilweise. Wenn Sie APIs anhand einer Spezifikation entwerfen, mocken, funktionale Tests schreiben und in CI ausführen möchten, deckt Apidog diesen Workflow ab. Wenn Sie dagegen eine formelle konsumentengetriebene Vertragsverifizierung mit Broker-ähnlichem Handshake benötigen, ist Specmatic spezifischer darauf ausgerichtet.
Betrachten Sie beide daher als Spec-First-Tools mit unterschiedlichem Fokus, nicht als identische Alternativen.
Führt die Apidog CLI Vertragstests durch?
Apidog validiert API-Antworten gegen Ihr OpenAPI-Schema innerhalb der Testläufe. Dadurch werden strukturelle Abweichungen zwischen Spezifikation und Implementierung sichtbar.
Das deckt viele praktische Vertragstest-Anforderungen für eine einzelne API ab. Apidog fungiert jedoch nicht als Pact-ähnlicher Contract Broker zwischen getrennten Konsumenten- und Provider-Repositories. Der Artikel Was API-Vertragstests sind erklärt den Unterschied zwischen Schema-Validierung und brokerbasierten Verträgen.
Welches Tool passt besser zu CI/CD?
Beide laufen kopflos in CI.
Specmatic ist passend, wenn Ihr CI-Gate lautet:
Provider muss den Vertrag erfüllen.
Apidog ist passend, wenn Ihr CI-Gate lautet:
Die funktionale API-Testsuite muss bestehen.
Beispiel für einen Apidog-Schritt in GitHub Actions:
- name: Run Apidog API tests
run: |
apidog run \
--project-id "$APIDOG_PROJECT_ID" \
--access-token "$APIDOG_ACCESS_TOKEN" \
--env-id "$APIDOG_ENV_ID"
Muss ich Testcode schreiben?
Meistens nicht.
Specmatic generiert Vertragstests aus der Spezifikation. Apidog nutzt einen visuellen Szenario-Builder mit Assertions, Datenübergabe zwischen Schritten und datengesteuerten Läufen. Beide reduzieren handgeschriebenen Testcode im Vergleich zu einem klassischen Code-First-Testframework.
Fazit
Specmatic und die Apidog CLI starten beide bei der Spezifikation, optimieren aber für unterschiedliche Aufgaben.
Specmatic ist das fokussierte Werkzeug für Contract-as-Code: Provider gegen Spezifikationen prüfen und Stubs aus Verträgen bereitstellen. Apidog CLI ist der breitere Workflow für API-Design, Mocking, funktionale Tests und CI-Ausführung mit apidog run.
Die Wahl hängt von Ihrem Engpass ab:
- Teamübergreifende Vertragskontrolle: Specmatic.
- Spec-First-Design bis CI-Testlauf: Apidog.
- Beides gleichzeitig: Apidog und Specmatic gemeinsam einsetzen.
Wenn Sie einen Spec-First-, Mock- und CI-fähigen Test-Workflow auf einer Plattform ausprobieren möchten, laden Sie Apidog herunter und führen Sie Ihre erste OpenAPI-gesteuerte Testsuite aus. Alternativ können Sie erkunden, was Apidog über den gesamten API-Lebenszyklus hinweg bietet.



Top comments (0)