how achieve jmeter correlation with example
Denna handledning förklarar vad som är JMeter-korrelation, varför vi behöver det och hur man uppnår en korrelation i JMeter-skript:
Korrelation spelar en mycket viktig roll i JMeter-skript. Låt oss förstå vad korrelation betyder.
Korrelation är förhållandet mellan två eller flera variabler. Det hjälper till att få information för förhållandet på ett sätt som användaren kan besluta om för framtida planering eller åtgärder.
I den här handledningen lär du dig hur du uppnår en korrelation i JMeter-skript.
=> Klicka här för Den kompletta kostnadsfria träningen på JMeter (20+ videor)
Vad du kommer att lära dig:
JMeter Correlation Video Tutorial
testfall för webbapplikation vid manuell testning
Korrelation är i grunden att extrahera värde från en av förfrågningarna som kan användas i den efterföljande förfrågan eller någon av förfrågan som måste utföras vidare.
För att extrahera värden från en begäran behöver du processorer. Förprocessorer som HTMLLinkParser kan extrahera alla länkar från en sida som tas emot som svar.
I de flesta fall används efterbehandlare som XPath och Regular Expression Extractor för att extrahera värden från svaret och sedan lagra värdet i en variabel. Nu kan samma variabel användas i nästa begäran eller vilken begäran som helst som ska utföras senare.
Vanligtvis skulle du se JMeter fånga session, kokta, inloggningsuppgifter i vissa fall och sedan använda dem för andra förfrågningar som en parameter.
Förstå JMeter-korrelation
Denna handledning ger dig en klar förståelse för varför och var behöver vi korrelation i JMeter-skript. Vi kommer också att se hur korrelation görs med ett exempel.
Var behöver vi korrelation
Den används när dynamiska värden från svaret från tidigare förfrågningar krävs för att ställa upp till ytterligare förfrågningar.
Prestandatestning för Statisk webbplats kräver ingen anpassning , det kan fungera med normal funktionalitet för inspelning och körning med antalet trådar, så korrelationen krävs inte på statiska webbplatser.
Dessa dagar har de flesta webbplatser dynamiskt innehåll som returneras från webbservern. För varje iterativ begäran har det dynamiska svaret alltid olika data i retur. För att hantera samma korrelation krävs för dynamiska webbplatser.
Varför behöver vi korrelation
Korrelation för dynamiska svar fungerar på ett sätt som extraherar det dynamiska värdet från svaret och placerar det i en variabel som vidare används av de begärda förfrågningarna så att skriptet inte misslyckas.
Exempel: Om ett skript skapas för att en användare ska kunna logga in och utföra andra aktiviteter på hemsidan fungerar skriptet bara en gång och kommer att misslyckas nästa gång, eftersom användaren loggar in för första gången, blir variabler dynamiskt skapade och dessa sessionsvariabler hjälper till att autentisera de aktiviteter som utförs på efterföljande förfrågningar.
Så här vi måste korrelera webbförfrågningar och dynamiska variabler för att göra manuset framgångsrikt, vilket kan göras på två sätt.
Ett sätt är att utvecklaren upptäcker variabler som ska korreleras och kartlägger dem för att ersättas i på varandra följande förfrågningar. Detta är en manuell process.
Den manuella processen är framgångsrik för små skript endast eftersom de har färre korrelationspunkter och när antalet variabler som ska korreleras ökar, ökar också antalet chanser för att fel uppstår.
Det stora skriptets korrelation bör automatiseras eftersom det kommer att minska ansträngningarna och tiden både och riskerna för misstag inte kommer att finnas där.
Hur korrelation kan göras
JMeter-korrelation kan utföras
- Med hjälp av postprocessor “Extractor för reguljärt uttryck”.
- Variabel som ska återanvändas var dynamisk data finns.
Låt oss gå igenom ett exempel på hur 'Regular expression extractor' används för att korrelera variablerna.
Regular expression Extractor ska läggas till i samplerbegäran från vilken användaren vill få värdet.
Sampler -> Add-> Post Processor -> Extractor för reguljära uttryck.
De efterföljande förfrågningarna kommer att kunna använda ett variabelt värde för att dynamiskt kartlägga.
Nedan följer ett exempel för att förstå korrelationen i JMeter.
Steg :
# 1) Lägg till en trådgrupp i testplanen.
#två) Lägg till sampler “HTTP-begäran” i testplanen och döpa om den till begäran 1 och placera serverns namn eller IP på webbplatsen.
# 3) Lägg till postprocessorn 'Regular expression extractor' i testplanen för att extrahera värde från svaret från Sampler Request 1.
När extraktorn har tillsatts, nedanstående värden måste fyllas i för att extrahera värdet:
- Namn på den skapade variabeln: Det representerar namnet på JMeter-variabeln där det extraherade värdet kommer att lagras.
- Vanligt uttryck: Det är uttrycket att definiera data från svaret.
- Mall : Mallar avser grupperna med reguljära uttryck. $ 1 $ syntax representerar grupp 1, på samma sätt representerar $ 2 $ syntax grupp 2, och så vidare.
- Matchnummer: Om 0 tillhandahålls väljer JMeter vilken slumpmässig match som helst.
- Standardvärde: Standardvärdet beaktas när inget värde matchar det reguljära uttrycket. Användaren kan ange standardvärdet som de vill som “Authentication failed”, “Not Found” etc. allt som definierar felet.
# 4) Lägg till en annan “HTTP-begäran” och ge den namnet Request2. Begäran om denna sampler kommer att extraheras från svarsdata för den första HTTP-begäran som lagts till.
Lägg till sökvägen till begäran. Namnet på servern eller IP krävs inte här. Sökvägen måste definieras med $ {Name}
# 5) Lägg till lyssnaren 'Visa resultatträd' i testplanen för att se korrelationen mellan begäran 1 och begäran 2.
# 6) Kör testplanen och se resultatet. Begäran 2 kommer att ha några värden extraherade från Förfrågan1.
Vanliga frågor om JMeter-korrelation
F # 1) Hur gör du korrelation och parametrering i JMeter?
Svar : Parameterisering används där olika användare i stort antal krävs i ett skript. De olika användarna och data kan hämtas med CSV-filer. Så om ett skript körs med en tråd som räknas som 50, kommer det varje gång att hämta en ny användardetalj från CSV-filen.
För att hantera korrelationen 'Regular expression extractor' används efterprocessorn för att extrahera värdet på variabeln från den första begäran om den efterföljande begäran.
Parameterisering ser efter inmatningsvärden för användaren medan korrelation ser ut för data som returneras av servern för den begäran som skapats.
F # 2) Hur hanterar JMeter dynamiska värden?
vr som fungerar med xbox one
Svar : För att hantera dynamiska JMeter-värden måste två steg utföras, dvs. ett för att hämta och lagra det dynamiska värdet från svaret och för det andra att använda det värdet i den efterföljande begäran. Detta görs med hjälp av efterbehandlaren Extractor för reguljärt uttryck.
F # 3) Hur korrelerar JMeter rubrikvärden?
Svar : För att korrelera rubrikvärden i JMeter krävs efterprocessor 'Regular expression extractor'.
- I den Ansök om - “Huvudprov” och för fält för att kontrollera “Svarsrubriker” måste väljas.
- Sätt värdena för alla fält.
- Namnet som anges i namnet på den skapade variabeln kommer att ha värdet på variabeln som lagras i JMeter. Ange uttryck i avsnittet Referensuttryck, det väljer det verkliga värdet för svarshuvudparametern.
- Ange mallnamn som $ 1 $.
- Nu för att få värdet använd $ och variabelnamn i parentes som $ {Variabelt namn}
Slutsats
Korrelation är en mycket viktig aspekt av JMeter. Statiska webbplatser kräver inte korrelation, men dynamiska webbplatser kräver korrelation eftersom servern svarar på dynamiska variabler som fortsätter att förändras varje gång. för att få skripten återanvänds om och om igen krävs korrelationen mellan de variabla värdena.
Det är därför som 'Regular expression extractor' används för att extrahera variabelt värde från en begäran för att användas i på varandra följande begäranden.
Rekommenderad läsning
- JMeter Timers: Constant, BeanShell och Guassian Random Timer
- Jmeter-styrenheter del 1
- Jmeter-styrenheter del 2
- Topp 5 JMeter-plugins och hur man använder dem (med exempel)
- Arbeta med FTP-begäran i JMeter
- Använda postprocessor i JMeter (Regular Expression Extractor)
- JMeter-variabler och funktioner
- Databastestning med JMeter