Tutorial

API-Testing lernen

Dieses Tutorial beginnt damit, was eine API ist, und endet mit Lasttests und CI-Pipelines. Für die ersten sieben Lektionen musst du nicht programmieren können. Danach nutzen manche Beispiele JavaScript oder Python, und jedes ist kurz genug, um es zu kopieren und auszuführen.

Jeder Request in den Lektionen geht an eine echte API, https://api.testingapis.com. Sie nimmt Schreibzugriffe an und hat Endpunkte, die gezielt auf bestimmte Weise scheitern, sodass du an Problemen üben kannst, die anderswo schwer nachzustellen sind. Die meisten Beispiele haben einen Senden-Button, der den Request direkt von dieser Seite ausführt. Die ersten Lektionen nutzen Endpunkte ohne Konto; spätere brauchen ein kostenloses Konto, und ihre Senden-Buttons funktionieren, sobald du angemeldet bist.

19 Lektionen3 StufenKostenlos

Einsteiger

7 Lektionen

Was eine API ist, wie HTTP funktioniert und wie du einen Request sendest und liest, was zurückkommt.

  1. 01Was eine API istClients, Server und der Request, den du schon geschickt hast, ohne es zu merken.
  2. 02Aufbau eines RequestsMethode, URL, Header und Body, und was der Server wirklich empfängt.
  3. 03Eine Antwort lesenStatuscodes, Antwort-Header und der Body.
  4. 04HTTP-MethodenGET, POST, PUT, PATCH und DELETE, und welche davon sich gefahrlos wiederholen lassen.
  5. 05JSON lesenDie sechs JSON-Typen und die Werte, an denen Tests scheitern.
  6. 06Requests mit curl und Postman sendenDie zwei Werkzeuge, die du jeden Tag nutzen wirst, und wann du welches nimmst.
  7. 07Deine ersten Testfälle schreibenErwartete Ergebnisse, negative Tests, Grenzwerte und Äquivalenzklassen.

Fortgeschritten

7 Lektionen

Echte Endpunkte richtig testen: CRUD, Validierung, Authentifizierung, Header und Tests als Code.

  1. 08Eine Ressource von Anfang bis Ende testenAnlegen, lesen, ändern und löschen, und prüfen, dass jede Operation wirklich passiert ist.
  2. 09Validierung und Fehler testenSchlechte Eingaben, fehlende Felder, falsche Typen und wie ein guter Fehler aussieht.
  3. 10Filtern, Sortieren und PaginierungDie Bugs in Listen-Endpunkten, die niemand vor Seite 3 bemerkt.
  4. 11Authentication and authorizationBasic auth, API keys, bearer tokens and JWTs, and the difference between 401 and 403.
  5. 12Headers, caching and cookiesContent negotiation, ETags, 304 responses and session cookies.
  6. 13Automating tests with codeTurning manual checks into tests with JavaScript or Python.
  7. 14Schemas and contract testingChecking the shape of a response, and using an OpenAPI document as the source of truth.

Experten

5 Lektionen

Die Fehler, die erst in Produktion auftauchen: Timeouts, asynchrone Arbeit, Sicherheitslücken und Last.

  1. 15Timeouts, retries and rate limitsFlaky servers, idempotency keys, 429 responses and how clients should behave.
  2. 16Async jobs, webhooks and streamsTesting work that finishes later, requests the server sends to you, and open connections.
  3. 17Security testing basicsBroken object access, auth bypasses, mass assignment and injection.
  4. 18Performance testingMeasuring latency, reading percentiles and running a small load test.
  5. 19Running tests in CITest data, flaky tests, pipelines and deciding what to test at all.