understanding variable scopes
In diesem Lernprogramm werden verschiedene Arten von Variablen behandelt, die vom Postman-Tool unterstützt werden, und wie sie beim Erstellen und Ausführen von Postman-Anfragen und -Sammlungen verwendet werden können:
Wir werden auch das Konzept von Umgebungsdateien ansprechen und sehen, wie sie beim Erstellen und Ausführen von Sammlungen genutzt werden können.
=> Lesen Sie hier den Perfect Postman Training Guide.
Was du lernen wirst:
Was sind Variablen im Postboten?
Variablen sind wie jede andere Programmiersprache nichts anderes als Platzhalter, die einen Wert oder das Ergebnis einiger Ausdrücke enthalten.
Zum Beispiel Betrachten Sie eine Variablendeklaration in C # / Javascript, die den Zeichenfolgenwert 'Hallo Welt!' Enthält. Wann immer diese Zeichenfolge erforderlich ist, kann jemand einfach den Namen der Variablen verwenden, um den Wert als tatsächliche Zeichenfolge zu ersetzen.
var z='hello world!'
Versuchen wir, die Variablen in Postman genauer zu untersuchen.
Variablen werden hier normalerweise in einem Kontext verwendet, in dem Sie Werte in Anforderungskörpern ersetzen, Zusicherungen für den Antworttext abgeben und diese in Voranforderungsskripten verwenden müssen, um die Vorverarbeitungslogik nach Bedarf zu verarbeiten.
Versuchen wir zunächst, verschiedene variable Bereiche in Postman zu verstehen. Der Umfang ist nichts anderes als die Lebensdauer und Zugänglichkeit einer Variablen. Es ähnelt dem Konzept des Umfangs, das wir in Programmiersprachen wie Java haben.
Zum Beispiel kann eine Variable einen globalen Bereich haben, d. h. jede Klasse / Methode kann auf die Variable zugreifen / diese ändern, bis die Methode oder das Programm aktiv ist.
In ähnlicher Weise kann es verschiedene Typen geben, die einen bestimmten Bereich haben, da in der Methode deklarierte lokale Variablen nur bis zu dem Zeitpunkt verwendet werden können, zu dem diese Funktion ausgeführt wird. Ebenso können in for-Schleifen deklarierte Variablen nur verwendet werden, während diese Schleife ausgeführt wird.
Hier ist ein Video-Tutorial:
Postman bietet 5 verschiedene Arten von variablen Bereichen an, wie unten angegeben:
qa Fragen und Antworten zu Vorstellungsgesprächen
- Global
- Sammlung
- Umgebung
- Daten
- Lokal
Hinweis: Es ist wichtig zu verstehen, dass alle Arten von Postman-Variablen über die Postman-Konsole hinzugefügt / entfernt werden können und die meisten von ihnen auch über Skripte abgerufen und aktualisiert werden können.
Versuchen wir, jeden dieser Variablentypen und -bereiche im Detail zu verstehen!
Variablentypen im Postboten
# 1) Global
Was sind globale Variablen und wann sollten sie verwendet werden?
Globale Variablen sind Allzweckvariablen und sollten größtenteils vermieden und nur für schnelle Prototyping-Anforderungen verwendet werden. Diese Variablen stehen allen in der Postman-Konsole verfügbaren Anforderungen zur Verfügung, unabhängig davon, zu welcher Sammlung sie gehören.
Diese Variablen sind analog zu globalen Bereichsvariablen in Programmiersprachen wie Java, C # usw., wobei die globalen Variablen für alle Teile des Programms zugänglich sind. Diese Variablen sind jedoch sehr unzuverlässig, da jeder Codeabschnitt auf den globalen Variablenwert zugreifen / diesen ändern kann.
Arbeiten mit globalen Variablen
Um mit globalen Variablen zu arbeiten, können sie über die Postman-Konsole sowie die Skripte in Postman-Anforderungen gesteuert werden.
Klicken Sie in der Postman-Konsole auf das Symbol „Auge“ neben der Umgebungsauswahl. Daraufhin wird ein Popup- / Kontextfenster mit Details zu den aktuellen globalen Variablen geöffnet.
Erstellen Sie nun eine neue Variable, indem Sie den Variablennamen und seinen Anfangswert eingeben.
Der Anfangswert wird standardmäßig für diese Variable beibehalten, und der aktuelle Wert ändert sich ständig, wenn er in den Anforderungen festgelegt oder aktualisiert wird, die diese Variablen verwenden.
Mit dem Skript kann auf Umgebungsvariablen mit „pm. Globale ”
Verwenden Sie den folgenden Befehl, um den Wert einer globalen Variablen mit dem Namen 'testVar' abzurufen.
pm.globals.get('testVar');
Verwenden Sie den folgenden Befehl, um den Wert einer globalen Variablen mit dem Namen 'testVar' festzulegen.
pm.globals.set('testVar', 'Hello Postman tutorial!');
Wenn Sie eine globale Variable über ein Skript entfernen möchten, können Sie die unten angegebene Funktion zum Deaktivieren verwenden.
pm.globals.unset('testVar');
Um alle globalen Variablen über das Skript zu löschen, können Sie die folgende Funktion verwenden.
pm.globals.clear();
# 2) Sammlung
Was sind Sammlungsvariablen und wann sollten sie verwendet werden?
Sammlungsvariablen werden verwendet, um Variablen im Erfassungsbereich zu definieren. Wie wir wissen, ist eine Sammlung in Postman nichts anderes als eine Gruppe von Postman-Anfragen.
Sammlungsvariablen ändern sich während der Ausführung einer Sammlung oder Anforderung innerhalb der angegebenen Sammlung nicht. Im Wesentlichen können Sammlungsvariablen während der Anforderungsausführung nur abgerufen und nicht aktualisiert werden.
Bitte beachten Sie, dass auf die Sammlungsvariablen nur von den Anforderungen zugegriffen werden kann, die Teil der Sammlung sind und keine anderen Anforderungen sind.
Wie entstehen sie?
Sammlungsvariablen können nur über die Postman-Anwendungskonsole erstellt und / oder entfernt werden.
# 1) Wählen Sie die Sammlung aus, in der Sie eine Variable hinzufügen möchten. Klicken Sie mit der rechten Maustaste und wählen Sie Bearbeiten.
#zwei) Wählen Sie nun die 'Variablen' Klicken Sie auf die Registerkarte und fügen Sie die Sammlungsvariablen hinzu, die hinzugefügt werden müssen.
Arbeiten mit Sammlungsvariablen
Für die Verwendung innerhalb einer Anforderung können Sammlungsvariablen mithilfe eines generischen Postman-Skripts referenziert werden. Abhängig von der Regel des engsten Bereichs wird die Sammlungsvariable zurückgegeben, wenn keine andere Variable vorhanden ist, die näher am Sammlungsbereich liegt.
pm.variables.get('testCollectionVar');
Um Postman-Variablen als Teil des Request Builder zu verwenden, verwenden Sie einfach die Syntax der doppelten geschweiften Klammer (siehe unten).
# 3) Umwelt
Was sind die Umgebungsvariablen?
Umgebungsvariablen sind die am häufigsten verwendeten Variablen in Postman.
Sie sind an eine ausgewählte Umgebung gebunden, die zum Ausführen der Anforderung verwendet wird. Sie haben einen engeren Umfang als die globalen Variablen, sind jedoch breiter als die Sammlungsvariablen.
Wann werden die Umgebungsvariablen verwendet?
- Umgebungsvariablen sind ideal, wenn Sie mit verschiedenen Servern arbeiten. Zum Beispiel Während Sie an einem Projekt arbeiten, arbeiten Sie im Allgemeinen mit vielen verschiedenen Umgebungen wie dev, test, stage und prod usw., die sich meist nur durch die URL unterscheiden, und der Rest der Dinge in der URL der API-Endpunktanforderung bleibt gleich.
In diesem Szenario können Sie eine Umgebungsdatei erstellen, die den verschiedenen von Ihrer Anwendung unterstützten Umgebungen entspricht. Zum Beispiel, Umgebungsvariablen für verschiedene Umgebungen wie Entwickler, Test usw. - Wenn Daten oder Informationen von einer Anforderung an eine andere übergeben werden müssen, sind Umgebungsvariablen eine gute Wahl, da sie einen breiteren Bereich als die lokalen Variablen und einen engeren Bereich als die globalen Variablen haben.
Wie entstehen sie?
Im Gegensatz zu Sammlungsvariablen können Umgebungsvariablen sowohl über die Konsole als auch über das Skript selbst erstellt werden.
Zum Erstellen von Umgebungsvariablen über die Konsole muss eine aktive Umgebung erstellt werden, die nichts anderes als ein Container mit Umgebungsvariablen ist. In den folgenden Screenshots können Sie eine neue Umgebung erstellen und Umgebungsvariablen hinzufügen.
Jetzt können Sie klicken 'Hinzufügen' um die neue Umgebung zu retten. Nach dem Speichern können Sie einfach auf klicken 'Die Einstellungen' Symbol zum Verwalten / Hinzufügen neuer Umgebungen.
Um die erstellte Umgebung verwenden zu können, müssen Sie die zu verwendende Umgebung auswählen, indem Sie die richtige Umgebung aus der Dropdown-Liste der Umgebungsliste auswählen.
Arbeiten mit Umgebungsvariablen
Ähnlich wie bei den Variablen Collection & Global können Umgebungsvariablen programmgesteuert über das Skript verarbeitet und direkt als Teil der URLs oder des Anforderungshauptteils über die Syntax doppelter geschweifter Klammern verwendet werden.
Wenn in der Umgebungsauswahl eine geeignete Umgebung ausgewählt ist, können Sie einfach die Syntax der doppelten geschweiften Klammer verwenden, um auf eine Umgebungsvariable zuzugreifen, wie im folgenden Screenshot dargestellt.
Um Umgebungsvariablen über das Skript zu verwenden, können Sie verwenden pm.environment.get und pm.environment.set Umgebungsvariablen abzurufen bzw. hinzuzufügen / zu ändern.
pm.environment.get('testEnvVar') pm.environment.set('testEnvVar',10)
Bitte beachten Sie, dass wir hier pm.environment und nicht pm.variables verwenden, d. H. Der Bereich ist immer auf die Umgebung eingestellt, und Postman wird versuchen, die Variable nur in der ausgewählten Umgebung herauszufinden.
Grenzwertanalyse und Äquivalenzpartitionierung
# 4) Lokal
Was sind lokale Variablen?
Lokale Variablen sind nur im Rahmen einer bestimmten Anforderungsausführung verfügbar. Dies ist analog zu Variablen auf Funktionsebene in modernen Programmiersprachen wie Java und C #. Diese sind Funktionsvariablen genau ähnlich, bei denen die Variablen nur im Kontext der Funktionsausführung Zugriff haben.
Ein wichtiger Anwendungsfall lokaler Variablen besteht darin, dass sie verwendet werden können, wenn Sie die Werte einer Variablen überschreiben möchten, die in einem anderen Bereich wie Global, Collection oder Environment definiert ist.
Angenommen, es gibt eine globale Variable mit dem Namen 'testVar'. Wenn Sie nun den Wert überschreiben möchten, ohne die globale Variable zu beeinflussen, können Sie eine lokale Variable mit demselben Namen erstellen und mit dem gewünschten Wert verwenden.
Wann werden die lokalen Variablen verwendet?
Lokale Variablen können auf dieselbe Weise verwendet werden wie Sammlungs-, globale und Umgebungsvariablen, die wir in den früheren Abschnitten dieses Lernprogramms erläutert haben.
Hierbei ist zu beachten, dass Sie die lokalen Variablen programmgesteuert verwenden müssen pm.variables.get / pm.variables.set nicht wie pm.environment oder pm.global, die für die Variablen Environment und Global verwendet wurden.
pm.variables.get('testVar') pm.variables.set('testEnvVar',10)
# 5) Daten
Was sind Datenvariablen?
Datenvariablen werden im Kontext der Anforderungsausführung über den Sammlungsläufer bereitgestellt.
Mit Postman können wir Anforderungen in einer Sammlung über den Sammlungsläufer ausführen und während der Ausführung einen Datensatz in Form von JSON oder CSV bereitstellen, der beim Ausführen der Anforderungen in der Sammlung verwendet wird.
Hierbei ist zu beachten, dass die Quelle der Datenvariablen die vom Benutzer bereitgestellte Datendatei im Format JSON oder CSV ist. Während der Anforderungsausführung können die Datenvariablen nur abgerufen, aber nicht aktualisiert / geändert oder hinzugefügt werden.
Wann werden Datenvariablen verwendet?
Datenvariablen werden verwendet, während wir mit mehreren Datensätzen arbeiten, und sie existieren nur während der Ausführung einer Iteration aus der Datendatei.
Wie verwende ich eine Datenvariable?
Was ist ein guter Stimmwechsler?
Sehen wir uns ein End-to-End-Szenario an, in dem Anforderungen über den Sammlungsläufer ausgeführt und eine Datendatei bereitgestellt werden, deren Wert ersetzt wird, während die Anforderung ausgeführt wird.
Fügen wir einer neuen Sammlung eine einfache GET-Anforderung hinzu, um das Konzept der Datenvariablen zu veranschaulichen. Wir werden denselben GET-Endpunkt verwenden: https://reqres.in/api/users/{userId}
Wir werden die {userId} über eine Datenvariable abrufen, die von einer CSV-Datei mit den Werten für die userId unterstützt wird.
Bitte befolgen Sie die folgenden Schritte, um den Ablauf zu verstehen.
# 1) Ändern Sie die Anforderungs-URL im Postman-Anforderungs-Generator in https://reqres.in/api/users/{{testDataVar}}.
#zwei) Hier, {{testDataVar}} ist unsere Datenvariable, deren Wert aus der Datenquelle abgerufen wird, die mit dem Sammlungsläufer verwendet wird.
#3) Erstellen Sie eine neue Datendatei im CSV-Format mit dem Spaltennamen 'testDataVar'.
Stellen Sie die Daten in der CSV-Datei wie folgt ein:
testDataVar 1 2 3 4 5
# 4) Speichern Sie die Datei im lokalen Dateisystem und verwenden Sie diese Datei, während Sie die Sammlung über den Sammlungsläufer ausführen.
# 5) Wählen Sie nun die Sammlung aus und klicken Sie auf Ausführen, um die Sammlungsanforderungen über den Sammlungsläufer auszuführen.
# 6) Wählen Sie die erstellte CSV-Datendatei in der Collection Runner-Konfiguration und den Dateityp als Text / CSV aus.
# 7) Klicken Sie nun auf 'Postman-Sammlung ausführen' und lesen Sie das Fenster 'Ergebnisse ausführen'. Für jede durchgeführte Iteration gibt es ein Ausführungsdetail für die konfigurierte Anforderung. Die Anzahl der Iterationen hängt von der Anzahl der Dateneingaben ab, die in der CSV-Datei konfiguriert wurden.
Weitere Details zu den Anforderungs-URLs usw. finden Sie in den Ergebnissen des Sammlungsläufers, um zu überprüfen, ob die Werte der Datenvariablen korrekt an die Anforderungs-URLs übergeben wurden. Im Allgemeinen werden Datenvariablen verwendet, wenn die Erfassungsanforderungen für mehrere Datensätze gemäß den konfigurierten Werten in den Datendateien ausgeführt werden sollen.
Zugriff auf Postbotenvariablen
Auf Postman-Variablen kann auf zwei Arten zugegriffen werden, wie unten angegeben.
- In der Anforderung kann auf Builder-Variablen in einem doppelten geschweiften Klammerformat zugegriffen werden. Beachten Sie, dass beim Auflösen der Variablen der nächstgelegene Wert für die Bereichsvariable ersetzt wird, bevor die Anforderung ausgeführt wird.
- Im Skript können wie beim Pre-Request-Skript, bei Tests, Zusicherungen usw. mit der folgenden Syntax auf die Variablen zugegriffen / diese geändert werden.
So rufen Sie eine Variable ab:
pm.variables.get( ‘variable-name’ )
So legen Sie einen Variablenwert fest
pm.variables.set( ‘variable-name’ , ’variable-value’ )
Hierbei ist zu beachten, dass beim Festlegen einer Variablen versucht wird, die nächstgelegene Bereichsvariable zu finden und diese Variable festzulegen oder zu ändern. Falls während des Sets keine Variable gefunden wird, erstellt das Postman-Skript einfach eine neue lokale Variable.
Hinweise und Tipps
# 1) Es ist ratsam, unterschiedliche Variablennamen in unterschiedlichen Bereichen zu verwenden, um Verwirrung zu vermeiden, da die Postman-Sandbox die Variable mit dem nächstgelegenen Bereich auswählt, wenn versucht wird, Variablen im Anforderungsgenerator mit doppelt geschweifter Klammer aufzulösen, oder wenn pm.variables.get / Das Skript pm.variables.set wird aufgelöst.
#zwei) Bei Umgebungsvariablen ist nur die ausgewählte Umgebung wirksam, d. H. Während die Variablen aufgelöst werden, untersucht Postman nur die ausgewählte Umgebung.
#3) Bitte beachten Sie eine allgemeine Faustregel: Eine Variable mit dem engsten Gültigkeitsbereich hat Vorrang vor anderen. Zum Beispiel, Wenn es eine globale Variable mit dem Namen 'input1' gibt und es eine lokale Variable mit demselben Namen gibt und wenn die Variable im Bereich einer lokalen Variablen referenziert wird, hat die Variable im lokalen Bereich im Vergleich zur globalen Variablen mehr Vorrang.
Fazit
In diesem Tutorial haben wir viele Konzepte in Bezug auf Variablen in Postman sowie die verschiedenen Verwendungsmöglichkeiten angesprochen. Wir haben die Arten von Variablen wie Global, Collection, Environment, Local & Data und den Zeitpunkt ihrer Verwendung besprochen.
Kurz gesagt, Postman-Variablen verleihen der Art und Weise, wie das Tool verwendet und konfiguriert werden kann, um Anforderungen und Tests effektiv auszuführen, eine Menge Leistung. Es konnten nur wenige Referenzen aus der offiziellen Dokumentation des Postboten erhalten werden Hier.
=> Besuchen Sie hier, um A-Z der Postman Training Tutorials hier zu sehen.
Literatur-Empfehlungen
- Variablen in C ++
- Python-Variablen
- VBScript-Variablen: Deklarieren und Verwenden von Variablen - VBScript Dim
- C # -Datentypen und -Variablen mit Beispielen
- POSTMAN Tutorial: API-Tests mit POSTMAN
- JMeter-Variablen und -Funktionen
- Setup der Entwicklungsumgebung für C ++
- Typqualifizierer und Speicherklassen in C ++