how when use postman pre request
In diesem Tutorial erklären wir anhand einfacher Beispiele, wie und wann Postman-Voranforderungsskripte und Postanforderungsskripte oder -tests verwendet werden:
In Analogie zur Unit-Testing-Welt ist das Pre-Request-Skript nichts anderes als das Setup, das vor der Ausführung eines Tests durchgeführt wird. Wenn Sie in Postman die Anforderung auf eine bestimmte Weise ändern möchten, ist das Pre-Request-Skript der Ort, an dem Sie die Logik oder den Code ablegen können, die bzw. der garantiert, bevor die Anforderungsausführung beginnt.
=> Sehen Sie sich hier die Simple Postman Training Series an.
Was du lernen wirst:
Postman Request Flow
Versuchen wir zunächst zu verstehen, wie Postman die Vor- und Testskripte im Kontext der Anforderungsausführung aktiviert oder zulässt. Postman verfügt über eine leistungsstarke Laufzeit, die auf Node JS basiert und das Hinzufügen von Skriptfunktionen vor und nach der Ausführung von Anforderungen ermöglicht.
Die Skripte sind nichts anderes als Javascript-Code, den die Postman-Sandbox versteht und wie gewünscht ausführt.
In der folgenden Abbildung finden Sie Informationen zum Postman Request Flow.
bester PC-Reiniger für Windows 7 kostenloser Download
Hier ist ein Video-Tutorial:
Das Pre-Request-Skript ist der Einstiegspunkt für die Anforderungsausführung in Postman. Wenn ein Skript / eine Logik als Teil des Voranforderungsskripts hinzugefügt wird, das zuerst ausgeführt wird, woraufhin die eigentliche Anforderungsausführung stattfindet, und sobald die Antwort empfangen wurde, werden die Tests oder die Nachanforderungsskripte ausgeführt.
Skripte vorab anfordern
Pre-Request-Skripte sind Logik oder Code, deren Ausführung garantiert ist, bevor die Anforderungsausführung beginnt. Es ermöglicht das Hinzufügen eines dynamischen Verhaltens zur Anforderungsausführung.
Hierbei ist zu beachten, dass Voranforderungsskripte auch auf Sammlungsebene angewendet werden können. Dies bedeutet indirekt, dass ein Voranforderungsskript auf alle Anforderungen angewendet wird, die Teil dieser Sammlung sind.
In der folgenden Abbildung sehen Sie den Anforderungsablauf, wenn das Voranforderungsskript und die Tests auf Sammlungsebene vorhanden sind.
Wann werden Pre-Request-Skripte verwendet?
Voranforderungsskripte sind im Allgemeinen nützlich, wenn eine Vorverarbeitung erforderlich ist, bevor eine Anforderung ausgeführt wird.
# 1)Zum Beispiel, Angenommen, Ihre Anforderung erwartet ein Sicherheitstoken, das von einem Server eines Drittanbieters abgerufen werden muss. Da sich dieser Wert bei jeder Ausführung der Anforderung ändert, kann er nicht auch für die Umgebungsvariablen / globalen Variablen beibehalten werden.
Pre-Request-Skripte sind der perfekte Ort, um eine solche Logik auszuführen und diese dann bei der Anforderungsausführung zu verwenden.
Sehen wir uns ein Beispiel für die Verwendung des Voranforderungsskripts in diesem Fall an. Wir werden zur Veranschaulichung denselben GET-API-Endpunkt verwenden https://reqres.in/api/users/{(randomVal}}
Hier ist {{randomVal}} eine zufällige Ganzzahl zwischen 1 und 10, die im Pre-Request-Skript berechnet wird.
Hier ist der Skriptablauf.
- Fügen Sie der Registerkarte 'Skript vor der Anforderung' Logik hinzu. Generieren Sie eine Zufallszahl zwischen 1 und 10.
var random = Math.floor(Math.random() * 10); pm.variables.set('randomVal',random)
- Speichern Sie die generierte Zufallszahl in einer Umgebung oder einer lokalen Variablen. Im obigen Codeausschnitt sehen Sie, dass wir einen Zufallswert zwischen 1 und 10 generiert und in einer lokalen Variablen namens 'randomVal' gespeichert haben.
- Verwenden Sie die Umgebungsvariable als Teil des Anforderungshauptteils.
- Führen Sie die Anforderung aus.
- Überprüfen Sie das Ergebnis. Sie können versuchen, die Anforderung mehrmals zu treffen, und sehen, dass die Anforderung für verschiedene Werte von Benutzer-IDs getroffen wird, die über das Vorskript für Zufallsvariablen generiert wurden.
#zwei) Skripts vor der Anforderung sind auch nützlich, wenn Sie bestimmte Header-bezogene Vorgänge ausführen möchten. Beispielsweise, Anforderungsheader, der eine Sitzungs-ID erwartet, die zufällig generiert werden muss und einige andere Konvertierungen wie die Codierung oder Verarbeitung der Basis 64 im Allgemeinen erfordert.
Verwenden von Skripten vor und nach der Anforderung mit Sammlungen
Wie oben erläutert, können Pre-Request-Skripte auch auf Sammlungsebene angewendet werden. Diese Skripte gelten für alle Anforderungen, die in der Sammlung verfügbar sind. Ähnlich wie bei Skripten vor der Anforderung können auch Tests oder Skripte nach der Anforderung auf eine Sammlung angewendet werden.
Schauen wir uns eine Illustration von Voranforderungsskripten und -tests auf Sammlungsebene an und sehen, wie die Skripte für jede der Anforderungen in der Sammlung in Aktion treten.
Wir werden eine Postman-Sammlung mit 2 Anfragen mit den folgenden Testendpunkten verwenden.
- ERHALTEN https://reqres.in/api/users/1
- POST https://reqres.in/api/register mit Anforderungshauptteil als JSON mit 2 Feldern, d. h. E-Mail-ID und Kennwort.
Wir werden die folgenden Skripte auf Sammlungsebene für diese Anforderungen hinzufügen.
- Voranfrage: Fügen Sie einen neuen Header mit dem Namen 'Content-Type' hinzu und setzen Sie den Wert des Headers auf 'application / json'.
- Prüfung: Als Test- oder Post-Request-Validierung prüfen wir, ob die zurückgegebene Antwort den HTTP-Statuscode 200 hat oder nicht.
Bitte befolgen Sie die folgenden Schritte
# 1) Erstellen Sie eine neue Postman-Sammlung mit den oben genannten Anforderungen GET und POST.
#zwei) Rechtsklick Sammlung -> Bearbeiten auswählen Hinzufügen von Skripten und Tests vor der Anforderung auf Sammlungsebene.
zu) Wählen Sie für das Pre-Request-Skript im Bearbeitungsfenster der Sammlung die Registerkarte Pre-Request-Skripte aus und fügen Sie das folgende Skript hinzu (Dieses Skript fügt einen Header mit dem Namen 'Content-Type' mit dem Wert application / JSON für alle Anforderungen in der Sammlung hinzu.) .
pm.request.headers.add({ key: 'Content-Type', value: 'application/json' });
b) Fügen Sie zum Hinzufügen von Tests oder Post-Request-Skripten das folgende Skript auf der Registerkarte 'Tests' hinzu. (Dieses Skript fügt einen Test hinzu, um die Antwort mit dem HTTP-Status 200 für alle in der Sammlung vorhandenen Anforderungen zu überprüfen.)
pm.test('Status code is 200', function () { pm.response.to.have.status(200); });
c) Sobald die Skripte hinzugefügt wurden, klicken Sie auf 'Aktualisieren', um die vorgenommenen Änderungen zu speichern.
#3) Versuchen wir nun, die Anforderungen in der Sammlung auszuführen und festzustellen, ob die auf Sammlungsebene angegebenen Skripts und Tests vor der Anforderung ordnungsgemäß eingerichtet sind oder nicht.
# 4) Öffnen Sie die erste GET-Anfrage und führen Sie sie aus, indem Sie auf klicken 'Senden' Taste. Zum Anzeigen der Anforderungsheader können Sie die Postman-Konsole verwenden, die die vollständigen Anforderungs-Antwort-Details für alle Anforderungen anzeigt, die die Postman-Anwendung durchlaufen.
Java übergibt ein Array an eine Methode
Wir werden die Postman-Konsole später ausführlich besprechen, aber in diesem Tutorial werden wir sie nur zum Überprüfen von Anforderungsheadern verwenden.
Um die Konsole zu öffnen, klicken Sie entweder auf das Konsolensymbol unten links in der Postman-Anwendung oder wählen Sie die Konsolenoption aus dem Menü Fenster (Bitte beachten Sie, dass ähnliche Optionen sowohl für Windows-Betriebssysteme als auch für Postman-Anwendungen verfügbar sind).
# 5) Um die Skripts oder Tests nach der Anforderung zu überprüfen, überprüfen Sie einfach die Registerkarte 'Tests' der ausgeführten Anforderung. Der Test zur Überprüfung des Statuscodes, der auf der Erfassungsebene hinzugefügt wurde, sollte 200 sein.
Mit Skripten auf Sammlungsebene haben wir Folgendes erreicht:
- Durch das Hinzufügen von Skripten und Tests vor der Anforderung auf Sammlungsebene sind diese einfach zu warten. Beispiele, Dazu gehören das Hinzufügen gemeinsamer Header zu allen Anforderungen, das Generieren von Sitzungstoken für die Anforderungen durch Dritte usw.
- Allgemeine Skripte / Tests wie die Validierung von Antwortcodes können auf Sammlungsebene platziert werden, um Wiederholungen zu vermeiden.
Fazit
In diesem Tutorial haben wir uns mit Skripten und Tests vor der Anforderung oder Skripten nach der Anforderung befasst. Wir haben auch ein Beispiel für die Verwendung dieser Skripte auf Sammlungsebene durchgearbeitet, um Wiederholungen zu vermeiden und allgemeine Skripte auf Sammlungsebene selbst zu platzieren.
Sowohl Pre-Request-Skripte als auch Tests sind eine sehr leistungsstarke und wichtige Funktion von Postman und bieten einen großen Mehrwert bei der Erstellung eines End-to-End-Integrationstests, insbesondere für REST-basierte API-Endpunkte.
=> Besuchen Sie hier, um Postman From Scratch zu lernen.
Literatur-Empfehlungen
- POSTMAN Tutorial: API-Tests mit POSTMAN
- Wie verwende ich Postman zum Testen verschiedener API-Formate?
- Automatisieren der Antwortvalidierung mit Zusicherungen in Postman
- Arbeiten mit FTP-Anforderungen in JMeter
- Xpath Extractor Post-Prozessor in JMeter
- Eine kurze SoapUI-Anleitung zum Speichern von Anforderungs- und Antwortdaten in einer Datei - SoapUI Tutorial Nr. 15
- Verwenden des Postprozessors in JMeter (Regular Expression Extractor)
- Briefträgersammlungen: Importieren, Exportieren und Generieren von Codebeispielen