understanding variable scopes
Denne vejledning vil dække forskellige typer variabler, der understøttes af Postman Tool, og hvordan de kan bruges, når du opretter og udfører Postman Requests & Collections:
Vi vil også berøre konceptet med miljøfiler og se, hvordan de kan udnyttes, mens vi opretter og udfører samlinger.
=> Tjek den perfekte postbudsuddannelsesguide her.
Hvad du lærer:
Hvad er variabler i postbud?
Variabler, som ethvert andet programmeringssprog, er intet andet end pladsholdere til at have en værdi eller resultatet af nogle udtryk.
For eksempel , Overvej en variabel erklæring i C # / Javascript, der indeholder strengværdien 'hej verden!'. Nu når denne streng er påkrævet, kan nogen bare bruge navnet på variablen for at få værdien udskiftet som den faktiske streng.
var z='hello world!'
Lad os prøve at grave dybere ned i variabler i Postman.
Variabler her bruges typisk i en sammenhæng, hvor du skal udskifte værdier i anmodningsorganer, foretage påstande for svarorganet og bruge dem i forudgående anmodningsscript til at håndtere forbehandlingslogik efter behov.
Lad os for det første prøve at forstå forskellige variable rækkevidde i Postman. Omfang er intet andet end en variabels levetid og tilgængelighed. Det svarer til begrebet omfang, som vi har i programmeringssprog som Java.
For eksempel , kan en variabel have et globalt omfang, dvs. enhver klasse / metode kan få adgang til / ændre variablen, indtil metoden eller programmet er aktivt.
Tilsvarende kan der være forskellige typer, der har et specifikt omfang, da lokale variabler, der er erklæret i metoden, kun kan bruges indtil det tidspunkt, hvor denne funktion udføres. Ligeledes kan variabler, der er erklæret i for sløjfer, kun bruges, mens sløjfen udføres.
Her er en videotutorial:
Postbrevet tilbyder 5 forskellige typer variabelt anvendelsesområde som angivet nedenfor:
bedste systemvedligeholdelsessoftware til Windows 10
- Global
- Kollektion
- Miljø
- Data
- Lokal
Bemærk: Det er vigtigt at forstå, at alle de forskellige typer Postman-variabler kan tilføjes / fjernes ved hjælp af Postman-konsollen, og de fleste af dem kan også fås og opdateres ved hjælp af scripts.
Lad os prøve at forstå hver af disse variable typer og omfang i detaljer !!
Variable Typer I Postman
# 1) Global
Hvad er globale variabler, og hvornår skal de bruges?
Globale variabler er generelle variabler og bør for det meste undgås og kun bruges til hurtige prototypingskrav. Disse variabler er tilgængelige for alle anmodninger, der er tilgængelige i Postman-konsollen, uanset hvilken samling de tilhører.
Disse variabler er analoge med globale omfangsvariabler i programmeringssprog som Java, C # osv., Hvor de globale variabler er tilgængelige for alle dele af programmet. Disse variabler er dog meget upålidelige, da hvert sektion af kode kan få adgang til / ændre den globale variabelværdi.
Arbejde med globale variabler
For at arbejde med globale variabler kan de styres via Postman-konsollen såvel som scripts i Postman-anmodninger.
Via Postman-konsollen skal du klikke på “Eye” -ikonet i nærheden af miljøvælgeren, og det åbner et popup- / kontekstvindue med detaljer omkring de aktuelle globale variabler.
Opret nu en ny variabel ved at indtaste variabelnavnet og dens oprindelige værdi.
Den oprindelige værdi er noget, der vedvares som standard for den variabel, og den aktuelle værdi ændrer sig, når den indstilles eller opdateres i de anmodninger, der bruger disse variabler.
Ved hjælp af scriptet kan du få adgang til miljøvariabler ved hjælp af “pm. globaler ”
Brug nedenstående kommando til at få værdien af en global variabel ved navn 'testVar'.
pm.globals.get('testVar');
Brug nedenstående kommando til at indstille værdien af en global variabel ved navn 'testVar'.
pm.globals.set('testVar', 'Hello Postman tutorial!');
Hvis du vil fjerne en global variabel gennem script, kan du bruge funktionen til frakobling som nævnt nedenfor.
pm.globals.unset('testVar');
For at rydde alle de globale variabler gennem scriptet kan du bruge nedenstående funktion.
pm.globals.clear();
# 2) Samling
Hvad er samlingsvariabler, og hvornår skal de bruges?
Samlingsvariabler bruges til at definere variabler i samlingens omfang. Som vi ved, er en samling i Postbrevet intet andet end en gruppe postbud.
Samlingsvariabler ændres ikke under udførelsen af en samling eller anmodning inde i den givne samling. I det væsentlige kunne indsamlingsvariabler bare hentes og ikke opdateres under udførelse af anmodning.
Bemærk, at samlingsvariablerne kunne fås kun ved de anmodninger, der er en del af samlingen, og ikke som andre anmodninger.
Hvordan oprettes de?
Samlingsvariabler kan kun oprettes og / eller fjernes ved hjælp af Postman-applikationskonsollen.
# 1) Vælg samlingen, hvor du vil tilføje en variabel. Højreklik og vælg rediger.
#to) Vælg nu 'Variabler' fanen og tilføj de samlingsvariabler, der skal tilføjes.
Arbejde med samlingsvariabler
Til brug inde i en anmodning kan samlingsvariabler henvises ved hjælp af det generiske Postman-script, og afhængigt af reglen med det nærmeste omfang, hvis der ikke er nogen anden variabel, der er tættere end samlingsomfanget, returneres samlingsvariablen.
pm.variables.get('testCollectionVar');
For at bruge Postman-variabler som en del af anmodningsbyggeren skal du blot bruge den dobbelte krøllede afstivningssyntaks som vist nedenfor.
# 3) Miljø
Hvad er miljøvariablerne?
Miljøvariabler er den mest anvendte type variabler i Postman.
De er bundet til et valgt miljø, der bruges til at udføre anmodningen. De har et snævrere omfang end de globale variabler, men bredere end samlingens variabler.
Hvornår skal du bruge miljøvariablerne?
- Miljøvariabler er ideelle, når du arbejder med forskellige servere. For eksempel , generelt, mens du arbejder på et projekt, arbejder du med mange forskellige miljøer som dev, test, stage og prod osv., der adskiller sig hovedsageligt kun efter URL, og resten af tingene i API-slutpunktsanmodnings-URL forbliver de samme.
I denne slags scenarie kan du oprette en miljøfil, der matcher de forskellige miljøer, som din applikation understøtter. For eksempel, miljøvariabler til forskellige miljøer som dev, test osv. - Når der er behov for at videregive data eller information fra en anmodning til en anden, er miljøvariabler et godt valg, da de har et bredere omfang end de lokale variabler og snævrere omfang end globale variabler.
Hvordan oprettes de?
I modsætning til samlingsvariabler kan miljøvariabler oprettes både gennem konsollen såvel som gennem selve scriptet.
For at skabe miljøvariabler gennem konsollen skal der oprettes et aktivt miljø, der kun er en beholder med miljøvariabler. Se skærmbillederne nedenfor for at oprette et nyt miljø og tilføje miljøvariabler til det.
Nu kan du klikke 'Tilføje' for at redde det nye miljø. Når du er gemt, kan du blot klikke på 'Indstillinger' ikon for at administrere / tilføje nye miljøer.
For at kunne bruge det oprettede miljø skal du vælge det miljø, du vil bruge, ved at vælge det rigtige miljø fra rullelisten til miljølisten.
Arbejde med miljøvariabler
På samme måde som variablerne Collection & Global kan miljøvariabler handles programmatisk gennem scriptet og kan bruges direkte som en del af URL'erne eller anmodningstekst gennem syntaks med dobbelt krøllede seler.
Når et passende miljø er valgt i miljøvælgeren, kan du blot bruge syntaxen med dobbelt krøllet afstivning til at få adgang til en miljøvariabel som vist i nedenstående skærmbillede.
For at bruge miljøvariabler gennem scriptet kan du bruge pm.environment.get og pm.environment.set for at hente og tilføje / ændre henholdsvis miljøvariabler.
pm.environment.get('testEnvVar') pm.environment.set('testEnvVar',10)
Bemærk, at her bruger vi pm.environment og ikke pm.variables, dvs. omfanget er altid indstillet til miljøet, og Postman forsøger kun at finde ud af variablen i det valgte miljø.
# 4) Lokal
Hvad er lokale variabler?
Lokale variabler er kun tilgængelige inden for rammerne af en bestemt anmodningskørsel. Dette er analogt med funktionsniveauvariabler i moderne programmeringssprog som Java og C #. Disse svarer nøjagtigt til funktionsvariabler, hvor variablerne bare har adgang inden for rammerne af funktionens udførelse.
websteder til download af video fra youtube
En vigtig brugstilfælde af lokale variabler er, at de kan bruges, når du vil tilsidesætte værdierne for en variabel, der er defineret i ethvert andet anvendelsesområde som Global, Collection eller Environment.
dvs. antag at der er en global variabel ved navn 'testVar', og nu du vil tilsidesætte værdien uden at påvirke den globale variabel, kan du oprette en lokal variabel med samme navn og bruge den med den værdi, du kan lide.
Hvornår skal man bruge de lokale variabler?
Lokale variabler kan bruges på samme måde som variablerne Collection, Global og Environment, som vi diskuterede i de tidligere afsnit i denne tutorial.
Det er vigtigt at bemærke her, at du skal bruge de lokale variabler programmatisk pm.variables.get / pm.variables.set I modsætning til pm.environment eller pm.global, der blev brugt til miljø- og globale variabler.
pm.variables.get('testVar') pm.variables.set('testEnvVar',10)
# 5) Data
Hvad er datavariabler?
Datavariabler kommer i sammenhæng med udførelse af anmodninger gennem indsamlingsløberen.
Postbrevet giver os mulighed for at udføre anmodninger i en samling gennem samlingsløberen, og under udførelsen kan vi levere et datasæt i form af JSON eller CSV, der bruges, når vi kører anmodningerne inde i samlingen.
Det er vigtigt at bemærke her, at kilden til datavariabler er den brugerleverede datafil i formatet JSON eller CSV, og under udførelsen af anmodningen kan datavariablerne kun hentes, men ikke opdateres / ændres eller tilføjes.
Hvornår skal du bruge datavariabler?
Datavariabler bruges, mens vi arbejder med flere datasæt, og de findes kun under udførelsen af en iteration fra datafilen.
Sådan bruges en datavariabel?
Lad os se et ende-til-slut-scenarie med udførelse af anmodninger gennem collection runner og levering af en datafil, hvis værdi erstattes, mens anmodningen bliver udført.
Lad os tilføje en simpel GET-anmodning til en ny samling for at illustrere begrebet datavariabler. Vi bruger det samme GET-slutpunkt https://reqres.in/api/users/{userId}
automatiserede testværktøjer til webapplikationer
Vi henter {userId} gennem en datavariabel, der bakkes op af en CSV-fil, der indeholder værdierne for userId.
Følg nedenstående trin for at forstå strømmen.
# 1) Skift anmodnings-URL'en i Postman-anmodningsbyggeren til https://reqres.in/api/users/{{testDataVar}}.
#to) Her, {{testDataVar}} er vores datavariabel, hvis værdi hentes fra den datakilde, der skal bruges med samlingsløberen.
# 3) Opret en ny datafil i CSV-format med kolonnenavnet som “testDataVar”.
Indstil dataene i CSV-filen som nedenfor:
testDataVar 1 2 3 4 5
# 4) Gem filen på det lokale filsystem, og brug denne fil, mens du kører samlingen gennem samlingsløberen.
# 5) Vælg nu samlingen, og klik på Kør for at udføre indsamlingsanmodningerne gennem samlingsløberen.
# 6) Vælg den oprettede csv-datafil i samlingskonfigurationskonfigurationen og filtypen som tekst / csv.
# 7) Klik nu på 'Kør postbudsamling' og henvis til vinduet 'Kør resultater'. Der er en eksekveringsdetalje for den konfigurerede anmodning for hver iteration, der blev udført. Antallet af iterationer afhænger af antallet af dataindgange, der blev konfigureret i CSV-filen.
Du kan se flere detaljer om anmodnings-URL'erne osv. I resultaterne af samlingens løber for at validere, om værdierne for datavariablerne blev videregivet korrekt til anmodnings-URL'erne. Generelt anvendes datavariabler, når indsamlingsanmodningerne skal udføres mod flere datasæt i henhold til de konfigurerede værdier i datafilerne.
Adgang til postbudsvariabler
Du kan få adgang til postbudsvariabler på 2 måder som anført nedenfor.
- I anmodningen kan man få adgang til bygningsvariabler ved hjælp af et dobbelt krøllet afstivningsformat. Bemærk, at mens løsningen på variablen erstattes den nærmeste omfangs variabelværdi, inden anmodningen udføres.
- I scriptet, som det forudgående anmodnings script, tests, påstande osv., Kan variablerne tilgås / ændres ved hjælp af nedenstående syntaks.
Sådan henter du en variabel:
pm.variables.get( ‘variable-name’ )
For at indstille en variabel værdi.
pm.variables.set( ‘variable-name’ , ’variable-value’ )
Det er vigtigt at bemærke her, at når en variabel er indstillet, vil den forsøge at finde den nærmeste rækkevidde og indstille eller ændre den variabel. Hvis der ikke findes nogen variabel under sættet, opretter Postman-scriptet simpelthen en ny lokal variabel.
Bemærkninger og tip
# 1) Det tilrådes at have forskellige variabelnavne i forskellige omfang, for at undgå forvirring, da Postman sandkasse vælger variablen med det nærmeste omfang, når den forsøger at løse variabler i anmodningsbyggeren med dobbelt krøllet afstivningsformat, eller når pm.variables.get / pm.variables.set-scriptet er løst.
#to) For miljøvariabler er kun det valgte miljø effektivt, dvs. mens man løser variablerne, ser Postman kun på det valgte miljø.
# 3) Vær opmærksom på en generel tommelfingerregel - En variabel med det nærmeste omfang har forrang for andre. For eksempel, hvis der er en global variabel med navnet 'input1', og der er en lokal variabel med samme navn, og hvis der henvises til variablen i omfanget af en lokal variabel, har variablen i det lokale omfang mere forrang sammenlignet med den globale variabel.
Konklusion
I denne vejledning berørte vi mange begreber relateret til variabler i Postman sammen med de forskellige måder at bruge dem på. Vi diskuterede typer af variabler som Global, Collection, Environment, Local & Data og hvornår de skulle bruges.
I en nøddeskal tilføjer Postman-variabler en masse magt til den måde, hvorpå værktøjet kan bruges og konfigureres til at udføre anmodninger og test på en effektiv måde. Der kunne fås få henvisninger fra den officielle brevmands dokumentation her.
=> Besøg her for at se AZ af postbudstræningsvejledninger her.
Anbefalet læsning
- Variabler i C ++
- Python-variabler
- VBScript-variabler: Sådan erklæres og bruges variabler - VBScript Dim
- C # Datatyper og variabler med eksempler
- POSTMAN Tutorial: API-test ved hjælp af POSTMAN
- JMeter-variabler og -funktioner
- Udviklingsmiljøopsætning til C ++
- Skriv kvalifikatorer og opbevaringsklasser i C ++