understanding variable scopes
Denna handledning kommer att behandla olika typer av variabler som stöds av Postman Tool och hur de kan användas när du skapar och utför postman Requests & Collections:
Vi kommer också att beröra konceptet med miljöfiler och se hur de kan utnyttjas när vi skapar och kör samlingar.
=> Kolla in den perfekta brevbilsutbildningsguiden här.
Vad du kommer att lära dig:
Vad är variabler i brevbäraren?
Variabler, som alla andra programmeringsspråk, är bara platshållare för att ha något värde eller resultat av vissa uttryck.
Till exempel Tänk på en variabeldeklaration i C # / Javascript som innehåller strängvärdet 'hej världen!'. Närhelst denna sträng krävs kan någon bara använda variabelns namn för att få värdet ersatt som den faktiska strängen.
var z='hello world!'
Låt oss försöka gräva djupare in i variabler i Postman.
Variabler här används vanligtvis i ett sammanhang där du behöver byta ut värden i begärande organ, göra påståenden för svarsorganet och använda dem i skript för förfrågan för att hantera förbehandlingslogik efter behov.
Först och främst, låt oss försöka förstå olika variabla omfattningar i Postman. Omfattning är inget annat än en variabels livstid och tillgänglighet. Det liknar begreppet omfattning som vi har i programmeringsspråk som Java.
Till exempel , kan en variabel ha ett globalt omfång, dvs vilken klass / metod som helst kan komma åt / ändra variabeln tills metoden eller programmet är aktivt.
På samma sätt kan det finnas olika typer som har ett specifikt omfång, eftersom lokala variabler som deklareras i metoden endast kan användas tills den tid den funktionen körs. På samma sätt kan variabler som deklarerats för slingor endast användas medan den slingan körs.
Här är en videohandledning:
Postman erbjuder 5 olika typer av variabla omfattningar enligt vad som anges nedan:
hur öppnar man en apk-fil
- Global
- Samling
- Miljö
- Data
- Lokal
Notera: Det är viktigt att förstå att alla olika typer av Postman-variabler kan läggas till / tas bort med hjälp av Postman-konsolen och de flesta av dem kan nås och uppdateras med skript också.
Låt oss försöka förstå var och en av dessa variabeltyper och omfattning i detalj !!
Variabla typer i brevbäraren
# 1) Globalt
Vad är globala variabler och när ska de användas?
Globala variabler är variabler för allmänt ändamål och bör mest undvikas och endast användas för snabba prototypkrav. Dessa variabler är tillgängliga för alla förfrågningar som finns tillgängliga i Postman-konsolen, oavsett vilken samling de tillhör.
Dessa variabler är analoga med globala omfattningsvariabler i programmeringsspråk som Java, C #, etc., där de globala variablerna är tillgängliga för alla delar av programmet. Dessa variabler är dock mycket opålitliga eftersom varje kodsektion kan komma åt / ändra det globala variabelvärdet.
Arbeta med globala variabler
För att arbeta med globala variabler kan de styras via Postman-konsolen liksom skript i Postman-förfrågningar.
Genom Postman-konsolen klickar du på 'Eye' -ikonen nära miljöväljaren och det öppnar ett popup- / sammanhangsfönster med detaljer kring de aktuella globala variablerna.
Skapa nu en ny variabel genom att ange variabelnamnet och dess ursprungliga värde.
Det ursprungliga värdet är något som kvarstår som standard för den variabeln och det aktuella värdet ändras kontinuerligt när det ställs in eller uppdateras i förfrågningarna som använder dessa variabler.
Med hjälp av skriptet kan du komma åt miljövariabler med hjälp av “pm. globala ”
Använd kommandot nedan för att få värdet av en global variabel med namnet 'testVar'.
pm.globals.get('testVar');
Använd kommandot nedan för att ställa in värdet på en global variabel med namnet 'testVar'.
pm.globals.set('testVar', 'Hello Postman tutorial!');
Om du vill ta bort en global variabel via skript kan du använda funktionen unset som nämns nedan.
pm.globals.unset('testVar');
För att rensa alla globala variabler genom skriptet kan du använda funktionen nedan.
pm.globals.clear();
# 2) Samling
Vad är samlingsvariabler och när ska de användas?
Samlingsvariabler används för att definiera variabler i samlingsomfånget. Som vi vet är en samling i Postman inget annat än en grupp Postman-begäranden.
Samlingsvariabler ändras inte under körningen av en samling eller begäran i den givna samlingen. I huvudsak kan samlingsvariabler bara hämtas och inte uppdateras under körning av begäran.
Observera att samlingsvariablerna kan nås bara genom de förfrågningar som ingår i samlingen och inte är några andra förfrågningar.
pl sql scenariobaserade intervjufrågor
Hur skapas de?
Samlingsvariabler kan skapas och / eller tas bort endast med Postman-applikationskonsolen.
# 1) Välj samlingen där du vill lägga till en variabel. Högerklicka och välj redigera.
#två) Välj nu 'Variabler' fliken och lägg till de samlingsvariabler som måste läggas till.
Arbeta med samlingsvariabler
För användning inuti en begäran kan samlingsvariabler hänvisas med hjälp av det generiska Postman-skriptet och beroende på regeln med närmaste räckvidd, om det inte finns någon annan variabel som är närmare än samlingsomfånget, kommer samlingsvariabeln att returneras.
pm.variables.get('testCollectionVar');
För att använda Postman-variabler som en del av förfrågningsbyggaren, använd helt enkelt syntaxen med dubbla lockiga hakparenteser som visas nedan.
# 3) Miljö
Vad är miljövariablerna?
Miljövariabler är den mest använda typen av variabler i Postman.
De är knutna till en vald miljö som används för att utföra begäran. De har ett smalare omfång än de globala variablerna men bredare än de samlingsvariablerna.
När ska miljövariablerna användas?
- Miljövariabler är perfekta när du arbetar med olika servrar. Till exempel , generellt, när du arbetar med ett projekt arbetar du med många olika miljöer som dev, test, stage, och prod, etc som skiljer sig mest bara efter URL och resten av sakerna i API-slutpunktsbegäran URL förblir desamma.
I denna typ av scenario kan du skapa en miljöfil som matchar de olika miljöer som din applikation stöder. Till exempel, miljövariabler för olika miljöer som dev, test etc. - När det finns behov av att skicka data eller information från en begäran till en annan är miljövariabler ett bra val, eftersom de har ett bredare omfång än de lokala variablerna och smalare omfattning än globala variabler.
Hur skapas de?
Till skillnad från samlingsvariabler kan miljövariabler skapas både genom konsolen och genom själva skriptet.
För att skapa miljövariabler genom konsolen måste en aktiv miljö skapas som bara är en behållare med miljövariabler. Se skärmdumparna nedan för att skapa en ny miljö och lägga till miljövariabler till den.
Nu kan du klicka 'Lägg till' för att rädda den nya miljön. När du har sparat kan du helt enkelt klicka på 'Inställningar' ikon för att hantera / lägga till nya miljöer.
För att kunna använda den skapade miljön måste du välja den miljö du vill använda genom att välja rätt miljö i listrutan för miljölistan.
Arbeta med miljövariabler
På samma sätt som samling och globala variabler kan miljövariabler ageras på programmatisk väg genom skriptet och kan användas direkt som en del av URL: erna eller förfrågan på kroppen genom syntax med dubbla lockiga hakparenteser.
När en lämplig miljö har valts i miljöväljaren kan du helt enkelt använda syntaxen med dubbla lockiga hängslen för att komma åt en miljövariabel som visas i nedanstående skärmdump.
För att använda miljövariabler genom skriptet kan du använda pm.environment.get och pm.environment.set för att hämta och lägga till / ändra miljövariabler respektive.
pm.environment.get('testEnvVar') pm.environment.set('testEnvVar',10)
Observera att här använder vi pm.environment och inte pm.variables, dvs omfattningen är alltid inställd på miljön och Postman försöker ta reda på variabeln endast i den valda miljön.
# 4) Lokalt
Vad är lokala variabler?
Lokala variabler är endast tillgängliga inom ramen för en viss begäran. Detta är i analogi med funktionsnivåvariabler i moderna programmeringsspråk som Java och C #. Dessa liknar exakt funktionsvariabler där variablerna bara har åtkomst inom ramen för funktionsutförandet.
Ett viktigt användningsfall för lokala variabler är att de kan användas när du vill åsidosätta värdena för en variabel som definieras i något annat omfång som Global, Collection eller Environment.
antag att det finns en global variabel med namnet 'testVar' och nu vill du åsidosätta värdet utan att påverka den globala variabeln, du kan skapa en lokal variabel med samma namn och använda den med det värde du vill.
När ska man använda de lokala variablerna?
Lokala variabler kan användas på samma sätt som variabler för samling, global och miljö som vi diskuterade i de tidigare avsnitten i denna handledning.
Det är viktigt att notera här att du måste använda de lokala variablerna programmatiskt pm.variables.get / pm.variables.set till skillnad från pm.environment eller pm.global som användes för miljö- och globala variabler.
pm.variables.get('testVar') pm.variables.set('testEnvVar',10)
# 5) Data
Vad är datavariabler?
Datavariabler kommer i samband med förfrågningskörning via samlingslöparen.
Postman tillåter oss att utföra förfrågningar i en samling genom samlingslöparen och under körning kan vi tillhandahålla en datamängd i form av JSON eller CSV som används när vi kör körningarna i samlingen.
Det är viktigt att notera här att källan till datavariabler är den användarlevererade datafilen i formatet JSON eller CSV, och under förfrågan kan datavariablerna bara hämtas men inte uppdateras / modifieras eller läggas till.
När ska jag använda datavariabler?
Datavariabler används när vi arbetar med flera datauppsättningar och de existerar endast under körningen av en iteration från datafilen.
Hur använder jag en datavariabel?
Låt oss se ett slut-till-slut-scenario med att utföra förfrågningar genom samlingslöpare och leverera en datafil vars värde ersätts medan begäran körs.
Låt oss lägga till en enkel GET-begäran i en ny samling för att illustrera begreppet datavariabler. Vi kommer att använda samma GET-slutpunkt https://reqres.in/api/users/{userId}
Vi hämtar {userId} genom en datavariabel som kommer att backas upp av en CSV-fil som innehåller värdena för userId.
Följ stegen nedan för att förstå flödet.
# 1) Ändra begäran URL i Postman begäran byggare till https://reqres.in/api/users/{{testDataVar}}.
#två) Här, {{testDataVar}} är vår datavariabel vars värde kommer att hämtas från datakällan som kommer att användas med samlingslöparen.
# 3) Skapa en ny datafil i CSV-format med kolumnnamnet ”testDataVar”.
vilka är livscykelfaserna för mjukvaruutveckling
Ställ in data i CSV-filen enligt nedan:
testDataVar 1 2 3 4 5
# 4) Spara filen i det lokala filsystemet och använd den här filen medan du kör samlingen genom samlingslöparen.
# 5) Välj nu samlingen och klicka på Kör för att utföra samlingsbegärandena genom samlingslöparen.
# 6) Välj den skapade csv-datafilen i samlingskonfigurationskonfigurationen och filtypen som text / csv.
# 7) Klicka nu på 'Kör postboksamling' och hänvisa till fönstret 'Kör resultat'. Det finns en körningsdetalj för den konfigurerade begäran för varje iteration som utfördes. Antalet iterationer beror på antalet dataingångar som konfigurerades i CSV-filen.
Du kan se mer information om förfrågnings-URL: erna osv. I resultaten för samlingslöpare för att validera om värdena för datavariablerna skickades korrekt till förfrågnings-URL: erna. Generellt används datavariabler när insamlingsbegäranden ska köras mot flera datauppsättningar enligt de konfigurerade värdena i datafilerna.
Åtkomst till brevbärarvariabler
Postman-variabler kan nås på två sätt som anges nedan.
- I begäran kan du komma åt byggvariabler med hjälp av ett dubbelt lockformat. Observera att när du löser variabeln kommer det variabla värdet närmast att ersättas innan begäran körs.
- I skriptet, som skriptet före förfrågan, tester, påståenden, etc. kan variablerna nås / modifieras med hjälp av nedanstående syntax.
Så här hämtar du en variabel:
pm.variables.get( ‘variable-name’ )
För att ställa in ett variabelt värde.
pm.variables.set( ‘variable-name’ , ’variable-value’ )
Det är viktigt att notera här att när en variabel är inställd kommer den att försöka hitta variabeln närmast omfång och ställa in eller ändra variabeln. Om det inte finns någon variabel under uppsättningen skapar Postman-skriptet helt enkelt en ny lokal variabel.
Anteckningar och tips
# 1) Det är tillrådligt att ha olika variabelnamn i olika omfattningar, för att undvika förvirring eftersom Postman sandlåda väljer variabeln med närmaste räckvidd när den försöker lösa variabler i förfrågningsbyggaren med dubbelt lockigt avstängningsformat eller när pm.variables.get / skriptet pm.variables.set är löst.
#två) För miljövariabler är endast den valda miljön effektiv, dvs. när man löser variablerna kommer Postman bara att titta på den valda miljön.
# 3) Observera en allmän tumregel - En variabel med närmaste omfattning har företräde framför andra. Till exempel, om det finns en global variabel med namnet 'input1' och det finns en lokal variabel med samma namn och om variabeln refereras till inom en lokal variabel, har variabeln i det lokala omfånget mer företräde jämfört med den globala variabeln.
Slutsats
I denna handledning berörde vi många begrepp relaterade till variabler i Postman tillsammans med de olika sätten att använda dem. Vi diskuterade typerna av variabler som Global, Collection, Environment, Local & Data och när man skulle använda var och en av dem.
I ett nötskal lägger Postman-variabler mycket kraft till det sätt på vilket verktyget kan användas och konfigureras för att utföra förfrågningar och tester på ett effektivt sätt. Få referenser från Postmans officiella dokumentation kunde erhållas här.
=> Besök här för att se A-Z av brevbilsutbildningar här.
Rekommenderad läsning
- Variabler i C ++
- Python-variabler
- VBScript-variabler: Hur man deklarerar och använder variabler - VBScript Dim
- C # Datatyper och variabler med exempel
- POSTMAN-handledning: API-testning med POSTMAN
- JMeter-variabler och funktioner
- Utvecklingsmiljöinställning för C ++
- Skriv kvalificerings- och lagringsklasser i C ++