Ich erstelle automatisierte API-Tests für deine Rest- oder GraphQL-API
QA-Automatisierungsingenieur
Über diesen Service
Dein Team liefert Features hinter Feature-Flags. Der API-Vertrag driftet ab. Das Frontend bricht zur schlechtesten Zeit zusammen.
Manuelle Postman-Tests finden nichts. Dein QA hat es verpasst, weil niemand die Collection bei PRs ausführt. Der Bug geht live. Der Kunde merkt es zuerst.
Mein Fix: Ich baue eine code-first API-Test-Suite, die bei jedem PR läuft, Verträge validiert und Breakages erkennt, bevor sie live gehen. Kein Postman-Collection. Eine echte Test-Suite in deinem Repo.
WAS ENTHALTEN
- API-Testprojekt in Playwright APIRequest, RestAssured oder pytest+httpx
- Auth-Flow (Token, OAuth, Session) einmal eingerichtet
- Happy-path-Tests für deine wichtigsten Endpunkte
- Fehler-Vertrag-Tests (4xx, 5xx, Validierung)
- GitHub Actions oder GitLab CI-Integration
- *README + Anleitung zum Ausführen
WARUM ICH
Sechs Jahre in SaaS-Teams. API-Test-Layer, die in unter 2 Minuten bei jedem PR laufen. CI-Reduktion von 45 auf 15 Minuten inklusive API-Tests. Ich liefere keinen Postman-Ordner, den du nach 30 Tagen wegwirfst. Ich liefere Tests, die dein Team jeden Tag ausführt.
SCHREIB MIR ZUERST
Sende deine API-Dokumentation (OpenAPI, GraphQL-Schema oder einen Beispiel-Endpunkt). Eine Antwort: ja, ich kann helfen, oder nein und warum. Kein Verkaufsgespräch.
Anwendung testen:
API
Entwicklungstechnologie:
JavaScript
•
Node.js
•
TypeScript
Gerät:
Andere
Mein Portfolio
FAQ
Automatische Übersetzung
Warum code-first Tests statt Postman?
Postman-Collections scheitern nach zwei Monaten. Niemand führt sie konsequent in CI aus, niemand versioniert sie gut, niemand bringt Junioren damit auf den neuesten Stand. Code-first Tests leben neben deinem App-Code, laufen bei jedem PR und überleben Teamwechsel.
Welches Tool verwenden Sie?
Standard: Playwright APIRequest, wenn dein Team bereits Playwright nutzt, RestAssured für Java-Teams, pytest+httpx für Python-Teams, Hurl für leichte Tooling-Teams. Ich wähle basierend auf deinem Stack im ersten Kontakt. Gleiche Architektur, unterschiedliche Syntax.
Unterstützt du GraphQL?
Ja. GraphQL ist nur HTTP POST mit einem strukturierten Body. Schema-Validierung ist wichtiger als bei REST. Premium beinhaltet es. Standard unterstützt GraphQL-Endpunkte, aber kein Schema-Diffing.
Was ist mit Authentifizierung?
Token, OAuth (Client Credentials, Authorization Code, Refresh), Session-Cookies, mTLS, API-Keys werden alle unterstützt. Auth läuft einmal pro Testsitzung im Setup-Hook. Tests wiederverwenden das Token. Das macht API-Tests schnell.
Laufen die Tests gegen die Produktion?
Nein. API-Tests zielen standardmäßig auf Staging oder eine dedizierte Testumgebung. Production-Smoke-Tests sind ein separates, eng gefasstes Set mit nur Lesezugriff-Endpunkten, als Extra erhältlich.
Können deine Tests Breakings erkennen?
Ja, das ist die halbe Miete. Schema-Validierung (Premium) vergleicht die tatsächliche Response-Form mit deinem OpenAPI- oder GraphQL-Schema. Wenn sich ein Feld im Typ ändert oder verschwindet, schlägt der Test vor dem Frontend fehl.
Wie schnell laufen die Tests?
Gut strukturierte API-Suiten laufen in unter 2 Minuten für 30 bis 50 Endpunkte. Das Flaschenhals ist meist die Auth-Setup, nicht die Request-Geschwindigkeit. Ich konfiguriere die Auth so, dass sie einmal pro Sitzung läuft, nicht pro Test.
Was ist, wenn meine API keine Dokumentation hat?
Das ist in Ordnung. Ich lese Beispielanfragen und -antworten, leite den Vertrag ab und dokumentiere ihn beim Schreiben der Tests. Du bekommst die Test-Suite UND eine brauchbare Vertragsskizze, die du vorher nicht hattest.
Deckt die Suite Edge Cases ab?
Standard deckt Happy Paths und die offensichtlichen 4xx/5xx-Verträge ab. Premium fügt Edge Cases hinzu: Ratenlimits, Pagination, Sortierreihenfolgen, Such-Eckenfälle, optimistic concurrency. Wir stimmen die Edge-Case-Liste ab, bevor ich mit dem Schreiben beginne.
Funktioniert das mit Microservices?
Ja. Jeder Service erhält sein eigenes Testverzeichnis. Cross-Service-Tests leben in einer separaten Suite, die seltener läuft (nächtlich, nicht bei jedem PR). Ich strukturiere das Repo so, dass das Standard ist, nicht eine Nachgedankenlösung.
