Benutzerdefinierte Funktionen im Multi-Step API Monitoring

Wenn du deine API überwachen möchtest, benötigst du ein Tool, das über die Flexibilität verfügt, die Komplexitäten einer modernen Website oder App zu handhaben. Das Multi-Step API Monitoring ermöglicht dir, mit API-Endpunkten zu kommunizieren, die Ergebnisse auszuwerten, Antwortdaten wiederzuverwenden, automatische Variablen zu erzeugen, benutzerdefinierte Metriken zu verfolgen und Antwortdaten mit benutzerdefinierten Funktionen umzuwandeln.

Beginnen wir von vorn: Multi-Step API

Bevor wir uns um benutzerdefinierte Funktionen kümmern, sollten wir uns die Grundlagen des Multi-Step API Monitorings ansehen.

Der Nutzen des Multi-Step API Monitorings

Wenn dein Unternehmen eine API (Application Program Interface) veröffentlicht oder sich auf eine API stützt, musst du verifizieren, dass sie rund um die Uhr richtig funktioniert. Du kannst Prüfobjekte einrichten, die bestätigen, dass der Server antwortet, aber das belegt nicht die Funktionstüchtigkeit der API. Das Multi-Step API Monitoring bietet dir die Möglichkeit, vollständige API-Transaktionen mit mehreren API-Aufrufen und sogar mit mehreren APIs auszuführen.

  • Definiere deine API-Anfragen:Du hast die volle Kontrolle über deine Anfragen, angefangen bei der HTTP-Methode über die Header und den Inhalt bis hin zu Authentifizierungsdaten und Zertifikaten.Screenshot: Anfrageeinrichtung
  • Analysiere die Antwort: Du hast die Möglichkeit, die Antwort mit Assertions zu prüfen, beispielsweise Antwortzeit, Statuscode, Werte im Antwortinhalt, Cookies und Inhaltslänge. Nutze Variablen, um Werte aus der Antwort zu ziehen, die in späteren API-Aufrufen verwendet werden.Screenshot: Antworteinrichtung
  • Richte vordefinierte Variablen oder automatische Variablen ein: Vordefinierte oder automatische Variablen ermöglichen dir, während der Einrichtung Variablen zu definieren, denen du später Werte zuweist, wenn der Checkpoint den Test startet. Beispielsweise könntest du Anmeldedaten in einer vordefinierten Variable ablegen, die bei mehreren Anfragen wiederverwendet wird. Oder du könntest Datum- und Zeitstempel erfassen, um sie als eindeutige Nutzer-ID beim Testen einer Kontoerstellung einzusetzen.Scrreenshot: Einrichtung vordefinierter Variablen
  • Benutzerdefinierte Metriken verfolgen: Benutzerdefinierte Metriken sind ein Bonus. Wenn deine API numerische Daten zurückgibt, die du verfolgen und aufzeichnen möchtest, kannst du diese Werte nachhalten und sogar Alarme ausgeben. Wenn deine API zum Beispiel die Anzahl aktiver Bestellungen in einer Warteschlange zurückgibt, kannst du eine Warnmeldung erhalten, wenn die Anzahl eine bestimmte Schwelle erreicht.Screenshot: Einrichtung benutzerdefinierter Metriken

Multi-Step API Monitoring unterstützt nun benutzerdefinierte Funktionen

Manchmal liegen Inhalte aus einer Antwort, die in einer späteren Anfrage wiederverwendet werden sollen, nicht im richtigen Format vor. Beispielsweise antwortet die API entweder mit eins oder null (Boolean), aber in der nächsten Anfrage musst du die Zeichenfolge „true“ oder „false“ weitergeben. Mit benutzerdefinierten Funktionen kannst du sie austauschen.

Werte zuweisen

Das Zuweisen bzw. Mapping ist einfach ein „Ich möchte diesen Wert durch diesen anderen Wert ersetzen.“ Unser obiges Beispiel erfordert ein solch einfaches Mapping. Sehen wir uns an, wie du diese Funktion in deinen API-Schritten einrichten würdest.

Deine Funktion einrichten

  1. Klicke auf + Variable hinzufügen.
  2. Wähle Mapping.
  3. Gib deiner Funktion einen Namen.
  4. Gib deine Mapping-Werte ein. In diesem Fall möchten wir „0“ zu „false“ und „1“ zu „true“ zuweisen.
  5. Klicke Mapping hinzufügen, um „1“ zu „true“ zuzuweisen.

Screenshot: Einrichtung der Mapping-Funktion

Wenn du alles eingegeben hast, bist du fertig. Die Funktion ist jetzt einsatzbereit für deine Schritte. Sehen wir uns an, wie du diese Funktion in deinen Antworten nutzt.

Verwendung deiner Mapping-Funktion

Der Einsatz der Funktion erfordert, dass du den Antwortwert in eine Variable extrahierst. Mehr zum Definieren und Einsatz erfährst du unter Variablen im Multi-step API Monitoring.

Nachdem du den Antwortwert in eine Variable extrahiert hast, kannst du die Mapping-Funktion anwenden. In der ersten Zeile der Abbildung unten wird der Wert aus der JSON-Antwort extrahiert und in eine Variable namens is_active_boolean gespeichert. Wenn er in einer Variable gespeichert ist, kannst du den Wert anhand deiner Funktion zuweisen.

Screenshot: Verwenden deiner benutzerdefinierten Funktionen in den Antwortschritten

  1. Klicke auf Variable hinzufügen.
  2. Wähle im ersten Feld Funktion ausführen.
  3. Lege im zweiten Feld den Funktionsausdruck fest.
    1. Gib den Funktionsnamen ins Von-Feld (das zweite Feld) ein, gefolgt von einer offenen und einer geschlossenen Klammer. Zum Beispiel: boolean_to_text().
    2. Setze doppelte geschwungene Klammern um den gesamten Ausdruck. Zum Beispiel: {{boolean_to_text()}}.
    3. Setze den Variablennamen, der den Originalwert enthält, innerhalb der Klammern, mit doppelten geschwungenen Klammern um den Variablennamen: {{boolean_to_text({{is_active_boolean}})}}.
  4. Gib einen Variablennamen ein, um den Mapping-Wert zu empfangen. In diesem Fall ist der Wert entweder „true“ oder „false“.

Nun kannst du dich bei zukünftigen Aufrufen auf die neue Variable beziehen und den Textwert statt des booleschen Ergebnisses senden.

Benutzerdefinierte Funktionen mit regulären Ausdrücken

Die Nutzung von regulären Ausdrücken erfolgt auf gleiche Weise wie bei Mapping-Funktionen. Verwende reguläre Ausdrücke (auch RegExp genannt), um Werte aus Zeichenfolgen zu extrahieren, die zuvor in einer Variable gespeichert wurden. Mit regulären Ausdrücken kannst du komplexe Musterabgleiche ausführen, die den Wert aus einer Zeichenfolge analysieren. Erfahre mehr über reguläre Ausdrücke.

Fazit

Mit benutzerdefinierten Funktionen werden die dir verfügbaren Möglichkeiten des API Monitorings erweitert. Benutzerdefinierte Funktionen sind auch in deinen Webhook-Integrationseinrichtungen verfügbar.

Detailliertere Einrichtungsanleitungen findest du in unserer Knowledge Base. Wenn du Hilfe beim Einrichten deiner benutzerdefinierten Funktionen benötigst, steht dir unser Support-Team zur Verfügung. Reiche einfach ein Support-Ticket ein und unser Support-Team wird sich bei dir melden.