how use preprocessors jmeter
I denne vejledning lærer du at bruge JMeter PreProcessor, og hvordan fungerer PreProcessors som SampleTimeOut, UserParameter, HTMLLinkParser osv .:
PreProcessor udfører altid handlingen inden Sampler-anmodningen.
Nedenfor er listen over præprocessorer, der bruges i JMeter:
- Brugerparametre
- Eksempel på timeout
- JSR223 Forprocessor
- JDBC forprocessor
- Bean Shell Preprocessor
- HTML Link Parser
- HTML URL Re-Writing Modifier
- RegEx-brugerparametre
=> Klik her for Den komplette gratis træning på JMeter (20+ videoer)
Hvad du lærer:
JMeter PreProcessor-videovejledning
PreProcessors er handlinger, der udføres, før din faktiske sampler kører i JMeter. Det kan være noget som at gemme værdier for en variabel, definere timeouts osv. Forprocessoren kan tilføjes på trådgruppeniveau eller samplerniveau.
SampleTimeOut PreProcessor kan definere prøve-timeout for en anmodning. Enhver prøve, der tager mere tid end den definerede, mislykkedes. UserParameter PreProcessor bruges til at definere værdier for variabler for bestemte brugere.
Eksempel , kunne du definere en værdi for en variabel til bestemte brugere, og når sampleren køres, samles de værdier, der er specificeret i denne forprocessor.
HTMLLinkParser parser alle linkene fra svaret fra den tidligere anmodning, og så kan du tilfældigt ramme et hvilket som helst af linkene på siden. Du kan angive “. *” I din sti, og det vælger ethvert tilfældigt link til stede på siden og vil ramme det med den samme protokol, der er brugt i en bestemt protokol.
Almindeligt anvendt JMeter PreProcessor
Lad os gennemgå et par af forprocessorerne i JMeter:
software test interview spørgsmål og svar doc
# 1) JSR223 forprocessor
JSR223 Pre-processor udfører før sampleranmodningen og kører operationen ved hjælp af JSR223-scriptet. Flere sprog, der kan bruges, er JAVA, Groovy, BeanShell, JEXL osv.
Følg nedenstående trin for at tilføje denne forprocessor:
- Tilføj trådgruppe i en testplan.
- Tilføj Sampler “HTTP Request”.
- Tilføj JSR223 forprocessor.
- Tilføj lytter “Vis resultattræ”.
Eksempel :
Følgende script kan skrives ved hjælp af JavaScript til ændring af HTTP Request Sampler:
sampler.setDomain('website.com'); sampler.setProtocol('HTTP'); sampler.setMethod('GET');
JSR223-variabler, der er tilgængelige til brug af script, er som følger:
- Log: Denne variabel kan bruges til at skrive til logfilen.
- Parametre: Parametre som en streng.
- Etiket: Det er en strengetiket.
- Filnavn: Filnavnet på et script, hvis der tilføjes et eksternt script
- Hvis: Dette er en JMeter-variabel, der giver læse- og skriveadgang til variablerne.
- Sampler: Der gives adgang til den aktuelle sampler.
- argumenterer: Strengarray som parameter
- rekvisitter: JMeter egenskaber
- ctx: Dette er JMeter-kontekst, der giver adgang til konteksten
- UD: Sådan udskrives beskeden (system.out)
# 2) JDBC forprocessor
Denne processor kan bruges til at køre SQL-forespørgsler, før sampleren udfører.
For at tilføje forprocessoren følges nedenstående trin:
- Føj trådgruppe til testplanen.
- Tilføj Sampler “HTTP Request”.
- Tilføj HTTP Header Manager.
- TILFØJ JDBC PreProcessor til trådgruppen.
- Tilføj lytter som 'Vis resultattræ'.
Eksempel:
Hvis en bruger ønsker at hente brugernavn og adgangskode til brugere:
- Føj trådgruppe til testplanen.
- Tilføj sampler 'HTTP-anmodning' (detaljer om det krævede data brugernavn og adgangskode kan også gives i kropsdelen af sampleren, men det tjener ikke formålet, da opdatering i nogen af disse detaljer skal opdateres i scriptet som godt)
- Tilføj konfigurationselement “HTTP Header Manager”, og angiv oplysninger om navn og værdi.
- Tilføj JDBC Preprocessor.
Forespørgselstype kan vælges fra rullemenuen som Vælg Erklæring og forespørgsel kan specificeres for at udtrække det samme i forespørgselsfeltet.
Variabler, der skal ekstraheres, kan forsynes med kommaadskillelse.
- Tilføj lytter “Se resultattræ”, og kør testplanen for at se resultaterne.
JDBC forprocessor har felt Forespørgselstype der kan vælges i henhold til kravet.
Som i tilfældet brugeren ønsker det opdatering detaljerne, Opdateringserklæring skal bruges. Tilsvarende kan der efter behov vælges en anden forespørgselstype.
Eksempel på klargjort udsagn:
Hvis brugeren skal annullere en patients tids-ID fra de poster, der henviser til patientens navn, skal brugeren konfigurere JDBC-forbindelsen og derefter tilføje en JDBC-forprocessor, der vælger forespørgselstypen som Forberedt Vælg erklæring. Kør testplanen. Resultater kan ses af den tilføjede lytter.
# 3) HTML Link Parser
Denne processor bruges til at analysere HTML-svaret og til at udpakke alle links og formularer.
Følg nedenstående trin for at tilføje forprocessoren:
- Føj trådgruppe til testplanen.
- Tilføj sampler “HTTP-anmodning”
- Tilføj Simple controller.
- Tilføj endnu en sampler “HTTP Request”.
- Tilføj HTML Link Parser forprocessor.
- Tilføj lytteren “Vis resultattræ”.
Eksempel:
For at se, hvordan de interne sider kan gennemgås, kan nedenstående trin udføres:
- I trådgruppen skal du tilføje Sampler “HTTP-anmodning” og angive servernavnet eller IP-adressen. Omdøb samplernavnet som HTTP Request_Main.
- Føj Simple Controller til testplanen.
- Tilføj en mere sampler “HTTP Request” og angiv servernavn eller IP og angiv også /. * i stien, så den kan gennemgå til alle de fundet links. Omdøb samplernavnet som HTTP Request_Internal.
- Tilføj præprocessor “HMTL Link Parser” og lytteren som “Vis resultattræ” for at se output.
Ved at følge ovenstående trin vil output for den første sampler være webstedsnavnet i anmodningsfeltet, mens output for den anden sampler ville være de interne sider, der gennemgås på det medfølgende websted. Se nedenstående skærmbilleder for det samme.
# 4) HTTP URL Re-Writing Modifier
For at administrere URL'en til sessioninformation bruges omskrivningsteknik. Det har en fordel, at selvom cookien er deaktiveret i ethvert system, har den stadig potentialet til at arbejde.
For at tilføje forprocessoren følges nedenstående trin:
- Føj trådgruppen til testplanen.
- Føj HTTP-anmodning til testplanen.
- Føj præprocessor “HTTP URL Re-Writing Modifier” til testplanen.
- Føj endnu en Sampler “HTTP Request” til tråden.
Vi kan bruge denne forprocessor som følger:
Denne forprocessor kan også anvendes på trådniveauet og til den specifikke sampler. Hvis det anvendes på trådniveau, tilføjer det argumentet for hver anmodning, der er der i tråden.
Session Argument Navn : Sessions-ID-parameternavn skal angives i dette felt. Parameternavn kan findes som svar. Denne parameter søges på siden, og hvor den end findes, tages dens tildelte værdi.
Stiudvidelse: Hvis applikationen omskriver URL'en ved at tilføje et semikolon og også inkluderer session-id'et, skal denne mulighed vælges.
hvordan man opretter et objekt array i java
Brug ikke lig i stiudvidelse: Hvis applikationen omskriver webadresser uden '=' tegn mellem parameternavn og værdi, skal denne indstilling kontrolleres.
Brug ikke et spørgsmålstegn i stiudvidelse - Hvis applikationen kræves for at stoppe forespørgselsstrengen i at lukke eller slutte i stiudvidelsen, skal indstillingen være markeret.
Cache-sessions-id: Hvis session-ID er påkrævet til senere brug, skal denne mulighed vælges.
URL-kode: Hvis kodede URL'er er påkrævet, skal denne mulighed vælges.
# 5) RegEx-brugerparametre
Denne forprocessor lader den dynamiske værdi for HTTP-parametre hentes fra HTTP-anmodning med reguleringsekspressionsudtrækkeren. Det er indstillet til uafhængige tråde i en testplan.
For at tilføje forprocessoren følges nedenstående trin:
- Tilføj en trådgruppe i en testplan.
- Føj HTTP-anmodning til en trådgruppe med et servernavn eller IP.
- Tilføj Postprocessor “Regular Expression Extractor” for at udtrække værdier.
- Føj en anden HTTP-anmodning til en trådgruppe, og angiv servernavn eller IP.
- Føj 'Regex User Parameter' forprocessor til den anden HTTP-anmodning.
Denne forprocessor kan bruges som følger:
Navn på regulært udtryk: Det angivne referencenavn har de variabler, der skal være parset fra den første HTTP-anmodning.
Parameter navne regexp gruppe nummer: 1 repræsenterer den gruppe 1 i regexp. Det vil returnere navne på variablerne .
Parameterværdier regex gruppe nummer: 2 repræsenterer den gruppe 2 i regexp. Det vil returnere værdier af variablerne .
# 6) BeanShell forprocessor
Denne forprocessor får en tilfældig værdi fra en bestemt liste. Det kan generere tilfældige strenge for at tildele værdier til variablerne.
BeanShell Preprocessor tilføjes under sampleren.
For at tilføje forprocessoren følges nedenstående trin:
- Føj trådgruppe til testplanen.
- Føj Sampler til trådgruppen.
- Føj 'BeanShell Preprocessor' til den tilføjede sampler.
Eksempel:
Hvis brugerdefineret variabel er indstillet til 'sand' som en værdi, og denne værdi skal ændres til 'falsk', kan nedenstående kommando bruges til at gøre det samme. (Slet er brugerdefineret variabel, hvis værdi skal ændres))
vars.put(“delete”,”false”);
Hvis et eksternt script skal bruges, kan filen i så fald uploades til scriptet i feltet Filnavn. Gennemse-mulighed er angivet til upload af den eksterne fil.
Ofte stillede spørgsmål om JMeter Preprocessor
Q # 1) Hvad er en forprocessor i JMeter?
Svar : Forprocessor er det element, der bruges til at udføre handlingerne, før sampler-anmodningen kører. Der er et antal præ-processorer, som kan bruges til at opnå forskellige formål, f.eks. At bevare værdi i variablen, hente data fra databaser osv. Forprocessorer kan tilføjes enten på Sampler-niveau eller på trådniveau.
Q # 2) Hvad er Beanshell Preprocessor i JMeter?
Svar : BeanShell er et scriptbaseret og er en indbygget komponent i JMeter. Denne forprocessor bruges til at udføre scriptet, før Sampler kører.
Konklusion
JMeter forprocessorer - som vi diskuterede kører lige før sampleren udføres. JSR223 og Beanshell er script-baserede præprocessorer, mens JDBC bruges til databaseaktiviteter, da det er nødvendigt at hente eller hente dataene.
HTML-link-parser og RegEx-brugerparameter bruges ikke så populært som andre forprocessorer, men tjener formålet efter behov og har deres egne fordele.
Anbefalet læsning
- JMeter-lyttere: Analyserer resultater med forskellige lyttere
- JMeter-dataparameterisering ved hjælp af brugerdefinerede variabler
- JMeter-variabler og -funktioner
- Sådan opnås JMeter-korrelation med eksempel
- Top 5 JMeter-plugins og hvordan man bruger dem (med eksempler)
- JMeter Timers: Konstant, BeanShell og Guassian tilfældig timer
- Jmeter-controllere del 2
- Jmeter-controllere del 1