how use preprocessors jmeter
I den här handledningen lär du dig att använda JMeter PreProcessor och hur fungerar PreProcessors som SampleTimeOut, UserParameter, HTMLLinkParser, etc:
PreProcessor utför alltid åtgärden före Sampler-begäran.
Nedan är listan över PreProcessors som används i JMeter:
- Användarparametrar
- Exempel på timeout
- JSR223 förprocessor
- JDBC förprocessor
- Bean Shell Preprocessor
- HTML-länkparser
- HTML URL Re-Writing Modifier
- RegEx-användarparametrar
=> Klicka här för Den kompletta kostnadsfria träningen på JMeter (20+ videor)
Vad du kommer att lära dig:
JMeter PreProcessor Video Tutorial
PreProcessors är åtgärder som utförs innan din faktiska sampler körs i JMeter. Det kan vara ungefär som att lagra värden för en variabel, definiera timeouts osv. Förprocessorn kan läggas till på trådgruppsnivå eller samplernivå.
SampleTimeOut PreProcessor kan definiera timeout för prov för en begäran. Varje provtagningstid som är mer än den definierade skulle misslyckas. UserParameter PreProcessor används för att definiera värden för variabler för specifika användare.
Exempel , kan du definiera ett värde för en variabel för specifika användare och när samplaren körs plockas upp värden som anges i denna förprocessor.
HTMLLinkParser tolkar alla länkar från svaret från den föregående begäran och sedan kan du slå någon av länkarna på sidan slumpmässigt. Du kan ange “. *” I din sökväg och den skulle välja vilken slumpmässig länk som helst på sidan och skulle träffa den med samma protokoll som används i ett visst protokoll.
relationella kontra icke-relationella databasfördelar och nackdelar
Vanligt använda JMeter PreProcessor
Låt oss gå igenom några av förprocessorerna i JMeter:
# 1) JSR223 förprocessor
JSR223 Förprocessor utförs före samplerbegäran och kör operationen med JSR223-skriptet. Flera språk som kan användas är JAVA, Groovy, BeanShell, JEXL, etc.
Följ stegen nedan för att lägga till denna förprocessor:
- Lägg till trådgrupp i en testplan.
- Lägg till sampler “HTTP-begäran”.
- Lägg till JSR223 förprocessor.
- Lägg till lyssnare “Visa resultatträd”.
Exempel :
Följande skript kan skrivas med JavaScript för att modifiera HTTP-begäran Sampler:
sampler.setDomain('website.com'); sampler.setProtocol('HTTP'); sampler.setMethod('GET');
JSR223-variabler tillgängliga för användning av skript är följande:
- Logga: Denna variabel kan användas för att skriva till loggfilen.
- Parametrar: Parametrar som en sträng.
- Märka: Det är en strängetikett.
- Filnamn: Filnamn på ett skript om något externt skript läggs till
- Vars: Detta är en JMeter-variabel som ger läs- och skrivåtkomst till variablerna.
- Provtagare: Tillgång till nuvarande sampler tillhandahålls.
- argumenterar: Strängmatris som parameter
- rekvisita: JMeter egenskaper
- ctx: Detta är JMeter-sammanhang som ger åtkomst till sammanhanget
- UT: För att skriva ut meddelandet (system.out)
# 2) JDBC förprocessor
Denna processor kan användas för att köra SQL-frågor innan samplaren körs.
För att lägga till förprocessorn följer du stegen nedan:
- Lägg till trådgrupp i testplanen.
- Lägg till sampler “HTTP-begäran”.
- Lägg till HTTP Header Manager.
- LÄGG TILL JDBC PreProcessor i trådgruppen.
- Lägg till lyssnare som “Visa resultatträd”.
Exempel:
Om en användare vill hämta användarnamn och lösenord för användare:
- Lägg till trådgrupp i testplanen.
- Lägg till sampler 'HTTP-begäran' (information om nödvändigt användarnamn och lösenord för data kan också tillhandahållas i kroppsdelen av samplaren, men det tjänar inte syftet, eftersom uppdatering av någon av dessa detaljer måste uppdateras i skriptet som väl)
- Lägg till konfigurationselementet “HTTP Header Manager” och ge information om namn och värde.
- Lägg till JDBC Preprocessor.
Frågetyp kan väljas från rullgardinsmenyn som Välj uttalande och Query kan anges för att extrahera samma i Query-rutan.
Variabler som ska extraheras kan förses med kommaseparation.
- Lägg till lyssnaren “View Results Tree” och kör testplanen för att se resultaten.
JDBC förprocessor har fält Frågetyp som kan väljas enligt kravet.
Som om användaren vill uppdatering detaljerna, Uppdatera uttalande måste användas. På samma sätt kan, efter behov, en annan frågetyp väljas.
Exempel på beredda valuttalanden:
Om användaren måste avbryta en tidsboknings-ID för en patient från posterna som hänvisar till patientens namn, måste användaren konfigurera JDBC-anslutningen och sedan måste lägga till en JDBC-förprocessor som väljer frågetyp som Förberedd Välj uttalande. Kör testplanen. Resultaten kan ses av den tillagda lyssnaren.
# 3) HTML-länkparser
Denna processor används för att analysera HTML-svaret och för att extrahera alla länkar och formulär.
Följ stegen nedan för att lägga till förprocessorn:
- Lägg till trådgrupp i testplanen.
- Lägg till sampler 'HTTP-begäran'
- Lägg till enkel styrenhet.
- Lägg till en annan sampler “HTTP Request”.
- Lägg till HTML-länk Parser-förprocessor.
- Lägg till lyssnaren “Visa resultatträd”.
Exempel:
För att se hur de interna sidorna kan genomsökas kan nedanstående steg utföras:
- I trådgruppen, lägg till sampler “HTTP-begäran” och ange servernamnet eller IP-adressen. Byt namn på provtagarens namn som HTTP Request_Main.
- Lägg till enkel kontroller i testplanen.
- Lägg till ytterligare ett sampler “HTTP Request” och ange servernamn eller IP och ange /. * i sökvägen så att den kan krypa till alla hittade länkar. Byt namn på samplernamnet som HTTP Request_Internal.
- Lägg till förprocessor “HMTL Link Parser” och lyssnaren som “View Result Tree” för att visa utdata.
Genom att följa ovanstående steg kommer utdata för den första samplaren att vara webbplatsens namn i förfrågningsfältet medan för den andra samplaren skulle utdata vara de interna sidorna som genomsöks på den tillhandahållna webbplatsen. Se nedanstående skärmbilder för detsamma.
# 4) HTTP URL Re-Writing Modifier
För att hantera URL-adressen för sessionsinformation används omskrivningsteknik. Det har en fördel att även om kakan är inaktiverad i något system så har den fortfarande potential att fungera.
För att lägga till förprocessorn följer du stegen nedan:
- Lägg till trådgruppen i testplanen.
- Lägg till HTTP-begäran i testplanen.
- Lägg till förprocessor 'HTTP URL Re-Writing Modifier' i testplanen.
- Lägg till ytterligare en sampler 'HTTP-begäran' i tråden.
Vi kan använda denna förprocessor enligt följande:
Denna förprocessor kan också appliceras på trådnivån och på den specifika samplaren. Om den tillämpas på trådnivån kommer det att lägga till argumentet för varje begäran som finns i tråden.
Sessionsargumentnamn : Parameternamnet för sessions-ID måste anges i det här fältet. Parameternamn kan hittas som svar. Denna parameter kommer att sökas på sidan och var som helst den hittas kommer dess tilldelade värde att tas.
öppna en apk-fil i Windows
Sökväg: Om applikationen skriver om webbadressen genom att lägga till ett semikolon och även innehåller sessions-ID, bör detta alternativ väljas.
Använd inte lika i banförlängning: Om applikationen skriver om webbadresser utan '=' underteckna mellan parameternamn och värde, bör detta alternativ markeras.
Använd inte ett frågetecken i vägförlängningen - Om applikationen krävs för att stoppa frågesträngen från att stängas eller sluta i sökvägstillägget bör alternativet vara markerat.
Cache-sessions-ID: Om session-ID krävs för senare användning ska detta alternativ väljas.
URL-kod: Om kodade webbadresser krävs, bör detta alternativ väljas.
# 5) RegEx-användarparametrar
Denna förprocessor låter det dynamiska värdet för HTTP-parametrar hämtas från HTTP-begäran med extraheringen för reguljära uttryck. Den är inställd på oberoende trådar i en testplan.
För att lägga till förprocessorn följer du stegen nedan:
- Lägg till en trådgrupp i en testplan.
- Lägg till HTTP-begäran i en trådgrupp med ett servernamn eller IP.
- Lägg till Postprocessor “Regular Expression Extractor” för att extrahera värden.
- Lägg till ytterligare en HTTP-begäran i en trådgrupp och ange servernamn eller IP.
- Lägg till 'Regex User Parameter' förprocessor till den andra HTTP-begäran.
Denna förprocessor kan användas enligt följande:
Referensnamn för vanligt uttryck: Det angivna referensnamnet kommer att ha variablerna som måste analyseras från den första HTTP-begäran.
Parameternamn regexp gruppnummer: 1 representerar den grupp 1 i regexp. Det kommer att returnera variablernas namn .
Parametervärden regex gruppnummer: 2 representerar den grupp 2 i regexp. Det kommer att returnera värdena på variablerna .
# 6) BeanShell förprocessor
Denna förprocessor får ett slumpmässigt värde från en specifik lista. Det kan generera slumpmässiga strängar för att tilldela variablerna värden.
BeanShell Preprocessor läggs till under provtagaren.
För att lägga till förprocessorn följer du stegen nedan:
- Lägg till trådgrupp i testplanen.
- Lägg till sampler i trådgruppen.
- Lägg till 'BeanShell Preprocessor' i den tillagda samplaren.
Exempel:
Om användardefinierad variabel är inställd på 'true' som ett värde och detta värde måste ändras till 'false', kan kommandot nedan tillhandahållas för att göra detsamma. (Radera är användardefinierad variabel vars värde måste ändras))
vars.put(“delete”,”false”);
Om något externt skript ska användas kan i så fall filen laddas upp för skriptet i fältet Filnamn. Bläddringsalternativ tillhandahålls för att ladda upp den externa filen.
Vanliga frågor om JMeter Preprocessor
F # 1) Vad är en förprocessor i JMeter?
Svar : Förprocessor är det element som används för att utföra åtgärderna innan samplerbegäran körs. Det finns ett antal förprocessorer som kan användas för att uppnå olika syften som att behålla värde i variabeln, hämta data från databaser etc. Förprocessorer kan läggas till antingen på samplernivå eller på trådnivå.
F # 2) Vad är Beanshell Preprocessor i JMeter?
Svar : BeanShell är ett skriptbaserat och är en inbyggd komponent i JMeter. Denna förprocessor används för att köra skriptet innan Sampler körs.
Slutsats
JMeter förprocessorer - som vi diskuterade körs precis innan samplaren körs. JSR223 och Beanshell är skriptbaserade förprocessorer medan JDBC används för databasaktiviteter eftersom hämtning eller hämtning av data krävs.
HTML-länkparser och RegEx-användarparameter används inte lika populärt som andra förprocessorer utan tjänar syftet som krävs och har sina egna fördelar.
Rekommenderad läsning
- JMeter-lyssnare: Analysera resultat med olika lyssnare
- JMeter-dataparameterisering med användardefinierade variabler
- JMeter-variabler och funktioner
- Hur man uppnår JMeter-korrelation med exempel
- Topp 5 JMeter-plugins och hur man använder dem (med exempel)
- JMeter Timers: Constant, BeanShell och Guassian Random Timer
- Jmeter-styrenheter del 2
- Jmeter-styrenheter del 1