understanding variable scopes
Deze tutorial behandelt verschillende soorten variabelen die worden ondersteund door de Postman Tool en hoe ze kunnen worden gebruikt bij het maken en uitvoeren van Postman-verzoeken en -verzamelingen:
We zullen ook ingaan op het concept van omgevingsbestanden en zien hoe ze kunnen worden gebruikt bij het maken en uitvoeren van collecties.
Bekijk hier de perfecte trainingsgids voor postbode.
Wat je leert:
Wat zijn variabelen in Postman?
Variabelen zijn, net als elke andere programmeertaal, niets anders dan tijdelijke aanduidingen voor een waarde of resultaat van sommige uitdrukkingen.
Bijvoorbeeld Overweeg een variabele declaratie in C # / Javascript die de stringwaarde 'hallo wereld!' Bevat. Wanneer deze string vereist is, kan iemand gewoon de naam van de variabele gebruiken om de waarde te vervangen als de daadwerkelijke string.
Laten we proberen dieper in te gaan op variabelen in Postman.
Variabelen worden hier meestal gebruikt in een context waarin u waarden in aanvraagtekst moet vervangen, beweringen moet doen voor de antwoordtekst en deze moet gebruiken in pre-aanvraagscripts om de voorverwerkingslogica indien nodig af te handelen.
Laten we eerst eens kijken naar de verschillende variabele scopes in Postman. Scope is niets anders dan de levensduur en toegankelijkheid van een variabele. Het is vergelijkbaar met het concept van bereik dat we hebben in programmeertalen zoals Java.
Bijvoorbeeld kan een variabele een globaal bereik hebben, d.w.z. elke klasse / methode kan de variabele openen / wijzigen totdat de methode of het programma actief is.
Evenzo kunnen er verschillende typen zijn die een specifiek bereik hebben, aangezien lokale variabelen die in de methode zijn gedeclareerd, alleen kunnen worden gebruikt tot de tijd dat die functie wordt uitgevoerd. Evenzo kunnen variabelen die zijn gedeclareerd in for-lussen, alleen worden gebruikt terwijl die lus wordt uitgevoerd.
Hier is een video-tutorial:
Postman biedt 5 verschillende soorten variabele scopes aan, zoals hieronder vermeld:
youtube video-omzetter naar mp4-formaat
- Globaal
- Verzameling
- Milieu
- Gegevens
- Lokaal
Notitie: Het is belangrijk om te begrijpen dat alle verschillende soorten Postman-variabelen kunnen worden toegevoegd / verwijderd met behulp van de Postman-console en dat de meeste ervan ook kunnen worden geopend en bijgewerkt met scripts.
Laten we proberen elk van deze variabeletypen en reikwijdte in detail te begrijpen !!
Variabele typen in Postman
# 1) Wereldwijd
Wat zijn globale variabelen en wanneer moeten ze worden gebruikt?
Globale variabelen zijn variabelen voor algemene doeleinden en moeten meestal worden vermeden en alleen worden gebruikt voor snelle prototypevereisten. Deze variabelen zijn beschikbaar voor alle verzoeken die beschikbaar zijn in de Postman-console, ongeacht tot welke verzameling ze behoren.
Deze variabelen zijn analoog aan variabelen voor globale scope in programmeertalen zoals Java, C #, enz., Waar de globale variabelen toegankelijk zijn voor alle delen van het programma. Deze variabelen zijn echter zeer onbetrouwbaar, aangezien elke sectie van de code toegang heeft tot de globale variabele waarde of deze kan wijzigen.
Werken met globale variabelen
Om met globale variabelen te werken, kunnen ze worden beheerd via de Postman-console en via de scripts in Postman-verzoeken.
Klik via de Postman-console op het 'Oog' -pictogram naast de omgevingsselector, en dat zal een pop-up / contextvenster openen met details over de huidige globale variabelen.
Maak nu een nieuwe variabele door de variabelenaam en de beginwaarde in te voeren.
De beginwaarde is iets dat standaard voor die variabele wordt behouden en de huidige waarde blijft veranderen naarmate deze wordt ingesteld of bijgewerkt in de verzoeken die deze variabelen gebruiken.
Met behulp van het script kunnen omgevingsvariabelen worden benaderd met 'pm. globals ”
Gebruik het onderstaande commando om de waarde te krijgen van een globale variabele met de naam ‘testVar’.
Gebruik het onderstaande commando om de waarde van een globale variabele met de naam ‘testVar’ in te stellen.
Als u een globale variabele via script wilt verwijderen, kunt u de unset-functie gebruiken zoals hieronder vermeld.
Om alle globale variabelen via het script te wissen, kunt u de onderstaande functie gebruiken.
# 2) Verzameling
Wat zijn verzamelingsvariabelen en wanneer moeten ze worden gebruikt?
Verzamelingsvariabelen worden gebruikt om variabelen in het verzamelingsbereik te definiëren. Zoals we weten, is een collectie in Postman niets anders dan een groep Postman-verzoeken.
Collectievariabelen veranderen niet tijdens de uitvoering van een collectie of verzoek binnen de gegeven collectie. In wezen kunnen verzamelingsvariabelen zojuist worden opgehaald en niet worden bijgewerkt tijdens de uitvoering van het verzoek.
Houd er rekening mee dat de verzamelingsvariabelen alleen toegankelijk kunnen zijn voor de verzoeken die deel uitmaken van de verzameling en niet voor andere verzoeken.
Hoe worden ze gemaakt?
Collectievariabelen kunnen alleen worden gemaakt en / of verwijderd met behulp van de Postman-applicatieconsole.
# 1) Selecteer de collectie waaraan u een variabele wilt toevoegen. Klik met de rechtermuisknop en selecteer Bewerken.
#twee) Selecteer nu het 'Variabelen' tab en voeg de verzamelingsvariabelen toe die moeten worden toegevoegd.
Werken met verzamelingsvariabelen
Voor gebruik binnen een verzoek kunnen verzamelingsvariabelen worden verwezen met behulp van een generiek Postman-script en afhankelijk van de regel van het dichtstbijzijnde bereik, wordt de verzamelingsvariabele geretourneerd als er geen andere variabele is die dichterbij is dan het verzamelingsbereik.
Om Postman-variabelen te gebruiken als onderdeel van de aanvraagbouwer, gebruikt u gewoon de syntaxis voor dubbele accolades, zoals hieronder wordt weergegeven.
# 3) Omgeving
Wat zijn de omgevingsvariabelen?
Omgevingsvariabelen zijn de meest gebruikte variabelen in Postman.
Ze zijn gekoppeld aan een geselecteerde omgeving die wordt gebruikt voor het uitvoeren van het verzoek. Ze hebben een smaller bereik dan de globale variabelen, maar breder dan de verzamelingsvariabelen.
Wanneer de omgevingsvariabelen gebruiken?
- Omgevingsvariabelen zijn ideaal wanneer u met verschillende servers werkt. Bijvoorbeeld Over het algemeen werk je tijdens het werken aan een project met veel verschillende omgevingen zoals dev, test, stage en prod, enz. die meestal verschillen door alleen de URL en de rest van de dingen in de API-eindpuntverzoek-URL blijven hetzelfde.
In dit soort scenario's kunt u een omgevingsbestand maken dat overeenkomt met de verschillende omgevingen die uw toepassing ondersteunt. Bijvoorbeeld, omgevingsvariabelen voor verschillende omgevingen zoals dev, test, etc. - Als er behoefte is aan het doorgeven van gegevens of informatie van het ene verzoek naar het andere, zijn omgevingsvariabelen een goede keuze, omdat ze een breder bereik hebben dan de lokale variabelen en een kleiner bereik dan globale variabelen.
Hoe worden ze gemaakt?
In tegenstelling tot verzamelingsvariabelen, kunnen omgevingsvariabelen zowel via de console als via het script zelf worden gemaakt.
Om omgevingsvariabelen via de console te maken, moet een actieve omgeving worden gemaakt die niets anders is dan een container met omgevingsvariabelen. Raadpleeg de onderstaande schermafbeeldingen om een nieuwe omgeving te maken en er omgevingsvariabelen aan toe te voegen.
Nu kunt u klikken 'Toevoegen' om de nieuwe omgeving te redden. Eenmaal opgeslagen, kunt u eenvoudig op het 'Instellingen' pictogram om nieuwe omgevingen te beheren / toevoegen.
Om de gecreëerde omgeving te gebruiken, moet u de omgeving kiezen die u wilt gebruiken door de juiste omgeving te selecteren in de vervolgkeuzelijst met de omgevingslijst.
Werken met omgevingsvariabelen
Net als bij de variabelen Verzameling en Globaal, kunnen omgevingsvariabelen programmatisch worden verwerkt via het script en direct worden gebruikt als onderdeel van de URL's of de hoofdtekst opvragen via de syntaxis van dubbele accolades.
Wanneer een geschikte omgeving is geselecteerd in de omgevingsselector, kunt u eenvoudig de syntaxis van de dubbele accolade gebruiken om toegang te krijgen tot een omgevingsvariabele zoals weergegeven in de onderstaande schermafbeelding.
Om omgevingsvariabelen via het script te gebruiken, kunt u pm.omgeving.get en pm.omgeving.set om omgevingsvariabelen respectievelijk op te halen en toe te voegen / te wijzigen.
Houd er rekening mee dat we hier pm.environment gebruiken en niet pm.variables, d.w.z. de scope is altijd ingesteld op de omgeving en Postman zal proberen de variabele alleen in de geselecteerde omgeving te achterhalen.
# 4) Lokaal
Wat zijn lokale variabelen?
Lokale variabelen zijn alleen beschikbaar in de context van de uitvoering van een bepaald verzoek. Dit is analoog aan variabelen op functieniveau in moderne programmeertalen zoals Java en C #. Deze zijn exact gelijk aan functievariabelen waarin de variabelen alleen toegang hebben binnen de context van de functie-uitvoering.
Een belangrijk gebruiksscenario van lokale variabelen is dat ze kunnen worden gebruikt als u de waarden van een variabele die is gedefinieerd in een ander bereik zoals Globaal, Verzameling of Omgeving wilt overschrijven.
Dat wil zeggen: stel dat er een globale variabele is met de naam ‘testVar’ en u wilt de waarde nu overschrijven zonder de globale variabele te beïnvloeden, dan kunt u een lokale variabele met dezelfde naam maken en deze gebruiken met de waarde die u wilt.
waarom blijft mijn standaardgateway offline gaan
Wanneer moet u de lokale variabelen gebruiken?
Lokale variabelen kunnen op dezelfde manier worden gebruikt als verzamelings-, globale en omgevingsvariabelen die we in de eerdere secties van deze zelfstudie hebben besproken.
Het is belangrijk op te merken dat u, om de lokale variabelen programmatisch te gebruiken, moet gebruiken pm.variables.get / pm.variables.set in tegenstelling tot pm.environment of pm.global die werd gebruikt voor de variabelen Milieu en Globaal.
# 5) Gegevens
Wat zijn gegevensvariabelen?
Gegevensvariabelen komen in de context van het uitvoeren van verzoeken via de verzamelingsrunner.
Postman stelt ons in staat om verzoeken in een collectie uit te voeren via de collectierunner en tijdens de uitvoering kunnen we een dataset leveren in de vorm van JSON of CSV die wordt gebruikt tijdens het uitvoeren van de verzoeken binnen de collectie.
Het is belangrijk op te merken dat de bron van gegevensvariabelen het door de gebruiker aangeleverde gegevensbestand is in de indeling van JSON of CSV, en dat tijdens de uitvoering van het verzoek de gegevensvariabelen alleen kunnen worden opgehaald, maar niet kunnen worden bijgewerkt / gewijzigd of toegevoegd.
Wanneer gegevensvariabelen gebruiken?
Gegevensvariabelen worden gebruikt terwijl we met meerdere gegevenssets werken en ze bestaan alleen tijdens de uitvoering van een iteratie vanuit het gegevensbestand.
Hoe een gegevensvariabele te gebruiken?
Laten we eens kijken naar een end-to-end-scenario van het uitvoeren van verzoeken via de verzamelingsrunner en het leveren van een gegevensbestand waarvan de waarde wordt vervangen terwijl het verzoek wordt uitgevoerd.
Laten we een eenvoudig GET-verzoek toevoegen aan een nieuwe verzameling om het concept van gegevensvariabelen te illustreren. We gebruiken hetzelfde GET-eindpunt https://reqres.in/api/users/{userId}
We halen de {userId} op via een Data-variabele die wordt ondersteund door een CSV-bestand met de waarden voor de userId.
Volg de onderstaande stappen om de stroom te begrijpen.
beste sites om anime nagesynchroniseerd te bekijken
# 1) Wijzig de verzoek-URL in de Postman-verzoekbouwer in https://reqres.in/api/users/{{testDataVar}}.
#twee) Hier, {{testDataVar}} is onze gegevensvariabele waarvan de waarde wordt opgehaald uit de gegevensbron die wordt gebruikt met de verzamelingsrunner.
# 3) Maak een nieuw gegevensbestand in CSV-formaat met de kolomnaam als 'testDataVar'.
Stel de gegevens in het CSV-bestand in zoals hieronder:
# 4) Sla het bestand op het lokale bestandssysteem op en gebruik dit bestand terwijl u de verzameling door de verzamelingsrunner laat lopen.
# 5) Selecteer nu de collectie en klik op Uitvoeren om de incasso-aanvragen uit te voeren via de collectie-runner.
# 6) Selecteer het gemaakte csv-gegevensbestand in de configuratie van de collection runner en het bestandstype als text / csv.
# 7) Klik nu op 'Run Postman collection' en verwijs naar het 'Run Results' venster. Er is een uitvoeringsdetail voor het geconfigureerde verzoek voor elke iteratie die is uitgevoerd. Het aantal iteraties is afhankelijk van het aantal gegevensinvoer dat in het CSV-bestand is geconfigureerd.
U kunt meer details over de verzoek-URL's enz. Zien in de resultaten van de verzamelingsrunner om te valideren of de waarden van de gegevensvariabelen correct zijn doorgegeven aan de verzoek-URL's. Over het algemeen worden gegevensvariabelen gebruikt wanneer de verzamelingsverzoeken moeten worden uitgevoerd op basis van meerdere gegevenssets volgens de geconfigureerde waarden in de gegevensbestanden.
Toegang krijgen tot Postman-variabelen
Postman-variabelen kunnen op 2 manieren worden geopend, zoals hieronder vermeld.
- In het verzoek kunnen buildervariabelen worden geopend met behulp van een dubbele accolade-indeling. Houd er rekening mee dat bij het oplossen van de variabele de waarde van de dichtstbijzijnde bereikvariabele wordt vervangen voordat het verzoek wordt uitgevoerd.
- In het script kunnen, net als het pre-request-script, tests, beweringen, enz., De variabelen worden geopend / gewijzigd met behulp van de onderstaande syntaxis.
Om een variabele op te halen:
Om een variabele waarde in te stellen.
Het is belangrijk om hier op te merken dat wanneer een variabele is ingesteld, deze zal proberen de dichtstbijzijnde bereikvariabele te vinden en die variabele zal instellen of wijzigen. In het geval dat er geen variabele wordt gevonden tijdens de set, zal het Postman-script eenvoudig een nieuwe lokale variabele maken.
Opmerkingen en tips
# 1) Het is raadzaam om verschillende variabelenamen in verschillende scopes te hebben, om verwarring te voorkomen, aangezien Postman sandbox de variabele met de dichtstbijzijnde scope zal kiezen wanneer het variabelen probeert op te lossen in de request builder met een dubbele accolade of wanneer de pm.variables.get / pm.variables.set-script is opgelost.
#twee) Voor omgevingsvariabelen is alleen de geselecteerde omgeving effectief, d.w.z. bij het oplossen van de variabelen zal Postman alleen in de geselecteerde omgeving kijken.
# 3) Let op een algemene vuistregel: een variabele met de dichtstbijzijnde omvang krijgt voorrang op andere. Bijvoorbeeld, als er een globale variabele is met de naam ‘input1’ en er is een lokale variabele met dezelfde naam en als er naar de variabele wordt verwezen in het bereik van een lokale variabele, dan heeft de variabele in het lokale bereik meer prioriteit in vergelijking met de globale variabele.
Gevolgtrekking
In deze tutorial hebben we veel concepten met betrekking tot variabelen in Postman behandeld, samen met de verschillende manieren om ze te gebruiken. We hebben de soorten variabelen besproken, zoals Globaal, Verzameling, Omgeving, Lokaal en gegevens en wanneer we ze allemaal moeten gebruiken.
Kortom, Postman-variabelen voegen veel kracht toe aan de manier waarop de tool kan worden gebruikt en geconfigureerd om verzoeken en tests op een effectieve manier uit te voeren. Er waren maar weinig referenties uit de officiële documentatie van Postman hier.
Bezoek hier om AZ van trainingsinstructies voor postbode hier te zien.
Aanbevolen literatuur
- Variabelen in C ++
- Python-variabelen
- VBScript-variabelen: variabelen declareren en gebruiken - VBScript Dim
- C # Gegevenstypen en variabelen met voorbeelden
- POSTMAN-zelfstudie: API-testen met POSTMAN
- JMeter-variabelen en functies
- Ontwikkelomgeving instellen voor C ++
- Typ kwalificaties en opslagklassen in C ++