using post processor jmeter
In deze tutorial leer je JMeter Post Processor gebruiken, zoals Regular Expression Extractor, BeanShell, JDBC, Boundry Extractor enz .:
Er zijn twee soorten processors Pre-processor en Post-processor
Pre Processor wordt uitgevoerd voordat de sampler wordt uitgevoerd. Postprocessors worden gebruikt om de responsgegevens van de server uit te voeren en om de specifieke geëxtraheerde waarden op te slaan voor later gebruik.
Post-processors zijn acties die worden uitgevoerd nadat uw sampler is uitgevoerd. U kunt ze gebruiken om een aantal acties op uw antwoord uit te voeren of enkele waarden uit het antwoord extraheren en ze opslaan in een variabele die later kan worden gebruikt.
=> Klik hier voor De complete gratis training op JMeter (20+ video's)
Wat je leert:
- Videozelfstudie over JMeter-postprocessor
- JMeter POST-processors
- # 1) Extractor voor reguliere expressie
- # 2) CSS / JQuery Extractor
- # 3) XPath Extractor
- # 4) Resultaat Status Actie Handler
- # 5) BeanShell-postprocessor
- # 6) JSR223-postprocessor
- # 7) JDBC-postprocessor
- # 8) JSON Path Post Processor
- # 9) Boundary Extractor
- # 10) Debug Post Processor
- Veelgestelde vragen over postprocessor
- Gevolgtrekking
Videozelfstudie over JMeter-postprocessor
Regular Expression Post-Processor gebruikt Regular Expression string om enkele waarden op te halen uit het antwoord op uw verzoek. De waarde (n) die wordt geëxtraheerd, kunnen in elke variabele worden opgeslagen en kunnen een referentie zijn bij elk verder verzoek in het testplan. Waarden kunnen worden geëxtraheerd uit de responsbody, header, URL, responscode en andere verstrekte velden wanneer u deze processor toevoegt.
JMeter POST-processors
Post Processor wordt uitgevoerd wanneer Sampler-aanvraag is uitgevoerd. Er zijn verschillende Post-processors die worden gebruikt in JMeter.
De lijst met elementen bevat:
- Extractor voor reguliere expressie
- CSS / JQuery-extractor
- XPath Extractor
- BeanShell-postprocessor
- Resultaat Status Actie Handler
- JSR223 postprocessor
- JDBC-postprocessor
- JSON Path Post Processor
- Boundary Extractor
- BSF-postprocessor
- Debug Post Processor
Laten we deze JMeter-postprocessors eens doornemen:
# 1) Extractor voor reguliere expressie
Extractor voor reguliere expressies wordt gebruikt om de informatie van de reactie van de server Het gebruikt Perl-type Reguliere expressie voor het extraheren van de informatie, d.w.z. waarden. Deze processor zal draaien nadat elk sampler-verzoek is uitgevoerd.
Hoe het werkt:
Sampler-aanvraag Pas de extractor voor reguliere expressie toe Informatie / waarde-extractie Template String generatie Opslag van geëxtraheerde waarde / informatie in een specifieke variabelenaam
- Maak een testplan
- Discussiegroep toevoegen
- Sampler 'HTTP-verzoek' toevoegen
- Voeg de processor 'Extractor voor reguliere expressies' toe
Van toepassing op: ' Toepassen op ”heeft 4 opties.
- Hoofdmonster en submonsters: Het is van toepassing op zowel hoofdmonsters als submonsters.
- Alleen hoofdmonsters: Het wordt alleen op de hoofdvoorbeelden toegepast.
- Alleen submonsters: Het wordt alleen toegepast op submonsters.
- JMeter-variabele: De extractie wordt alleen toegepast op de genoemde variabele.
Te controleren veld: Veld om te controleren heeft een aantal opties. Alle veldnamen spreken voor zich, zoals hun naam doet vermoeden.
- Lichaam vertegenwoordigt de hoofdtekst van het antwoord, d.w.z. inhoud exclusief headers.
- Lichaam (niet ontsnapt): Hoofdgedeelte van het antwoord waarin alle HTML-escape-code is vervangen.
- Hoofdgedeelte als document Uit het aantal documenten worden gegevens gehaald.
Naam van gemaakte variabele zal de geëxtraheerde tekst hebben opgeslagen.
Reguliere expressie zal het patroon vergelijken met de tekst die moet worden geëxtraheerd. vertegenwoordigt een enkele instantie van de tekst die door de tags is geplaatst.
Sjabloon: Sjabloon wordt gebruikt om een tekenreeks te maken voor de overeenkomst van de geëxtraheerde waarden.
$ 1 $ vertegenwoordigt groep 1
Match Nee (0 voor willekeurig): Om te zien welke u als variabele moet selecteren.
- 0 duidt op een willekeurige waarde uit de gevonden resultaten.
- N-de nummer geeft de n-de nummer van de gevonden resultaten.
- Ieder negatief nummer - geeft aan dat alle gegevens zou moeten zijn geëxtraheerd
Standaardwaarde: De referentiewaarde wordt ingesteld op de standaardwaarde in case Reguliere expressie komt niet overeen.
Add Listener Bekijk resultatenboom.
# 2) CSS / JQuery Extractor
CSS Selector Extractor wordt gebruikt om de waarden / informatie uit het HTML-reactie van de server.
Hoe het werkt:
- Maak een testplan
- Discussiegroep toevoegen
- Voeg Sampler 'HTTP Request' toe aan de thread.
- Voeg de processor toe “ CSS Selector Extractor 'En geef de onderstaande details op:
CSS / JQuery extractor implementatie : Er zijn twee opties om te kiezen voor implementatie:
- Zijn p
- Jodd-Lizard
In het geval dat geen van de implementaties wordt gekozen, standaard Zijn p wordt overwogen.
CSS-selector-expressie: Voor extractie kan CSS-locator worden gebruikt. Stel dat de gebruiker de lijst met steden van waaruit de vlucht vertrekt, moet ophalen op een boekingssite. De gebruiker kan CSS-locator in het veld opgeven om het verwachte resultaat te krijgen.
De CSS Selector-expressie wordt gebruikt om knooppunten te selecteren uit de HTML-antwoordgegevens van de server.
Voeg luisteraar 'View Result Tree' toe om de resultaten te bekijken.
# 3) XPath Extractor
XPath Extractor toepassingen Xpath Query-taal om waarde uit te halen XML- of X (HTML) -antwoorden.
Laten we een voorbeeld nemen van hoe Xpath-extractor kan worden gebruikt:
- Maak een testplan
- Discussiegroep toevoegen
- Voeg HTTP Request standaardconfiguratie-element toe aan de Thread Group en geef Servernaam of IP op.
- Voeg twee HTTP-samplers toe en geef daarin het pad van de details op.
- Voeg Xpath-extractor toe en geef details op als:
- Naam van de maker: Het resultaat wordt opgeslagen in de gemaakte variabelenaam die in dit veld is opgegeven.
- Xpath-zoekopdracht: Query in XPath-taal.
- Match No (0 voor Random): 0 extraheert willekeurige waarde en -1 extraheert alle waarden.
- Standaardwaarde: NOTFOUND
- De standaardwaarde NOT FOUND wordt geretourneerd voor het geval er geen overeenkomst is gevonden.
Gebruik Tidy moet worden geselecteerd om HTML-respons te converteren naar XHTML.
- Voeg Debug Sampler toe. Het wordt gebruikt om het script te debuggen en het resultaat is te zien via de toegevoegde luisteraar.
- Voeg listener toe als View Result Tree.
# 4) Resultaat Status Actie Handler
Resultaat Status Actiehandler laat de gebruiker de actie selecteren die moet worden ondernomen wanneer de sampler een fout krijgt.
Hieronder kunnen acties worden ondernomen:
- Doorgaan met
- Start de volgende draadlus
- Stop de draad
- Stop de test
- Stop de test nu
- Onderbreek de huidige lus
- Ga naar de volgende iteratie van de huidige lus
Laten we een voorbeeld nemen wanneer de Stop de test nu optie is gekozen.
best beoordeelde gratis software voor het verwijderen van malware
- Maak een testplan
- Voeg processor toe Resultaat Status Actie Handler en selecteer Stop de test nu optie
- Voeg Configuratie-element toe HTTP Request-standaardinstellingen en het servernaam of IP
- Voeg Sampler toe HTTP-verzoeken met padbronnen /
- Voeg nog een sampler toe met een onjuist pad
- Voeg nog een Sampler toe met een pad voor Homepage.
- Luisteraar toevoegen Bekijk de resultaten in de tabel en voer het script uit.
Omdat Stop test nu als actie was gekozen, liet de processor de volgende sampler niet draaien.
# 5) BeanShell-postprocessor
Deze processor wordt uitgevoerd na de sampler.
Reset bsh.Interpreter voor elke oproep: Voor elke sampler wordt de tolk opnieuw aangemaakt als deze optie is geselecteerd.
Parameters: Parameters zijn degene die worden doorgegeven aan het Bean-shellscript.
Script-bestanden: Scriptbestand is het bestand waarin het Beanshell-script is opgeslagen om uit te voeren.
Script: Script is het Beanshell-script.
# 6) JSR223-postprocessor
In deze processor wordt het script alleen toegepast als de sampler is uitgevoerd.
Laten we een voorbeeld nemen:
- Maak een testplan
- Discussiegroep toevoegen
- Voeg Sampler toe HTTP-verzoek aan de thread en geef de servernaam of IP op.
- Voeg de processor toe 'JSR223 Post Processor' aan de draad. Selecteer de taal Groovy zoals in de onderstaande schermafbeelding:
Schrijf een script met behulp van de onderstaande syntaxis en bekijk de resultaten in logboeken:
vraag en antwoord voor het testen van software voor verser
Logboeken kan worden geschreven met variabelen ook, zoals weergegeven in het onderstaande scherm:
Er kunnen ook nieuwe variabelen worden toegevoegd. Raadpleeg de onderstaande schermafbeelding voor hetzelfde.
Voeg een foutopsporingsmonsternemer toe aan de thread en luisteraar als structuur met resultaten weergeven en voer de test uit.
# 7) JDBC-postprocessor
SQL-queries worden uitgevoerd nadat de Sampler is uitgevoerd om de wijzigingen aan te brengen die moeten worden teruggedraaid nadat het testen is voltooid of die niet vereist zijn.
Het kan worden gebruikt door,
- Een testplan opstellen
- Voeg JDBC-verbindingsconfiguratie toe met details van URL en referenties.
- Voeg JDBC Request toe met de invoer zoals variabelenamen en uitvoer als resultaatvariabele naam. Het type zoekopdracht kan uit de lijst worden geselecteerd, zoals hieronder wordt weergegeven:
- Voeg Debug Sampler toe om de variabelewaarden te bekijken.
- Add Listener View Results-structuur om de resultaten te bekijken.
# 8) JSON Path Post Processor
Dit Bewerker haalt de gegevens op van de JSON-reactie gebruik makend van Syntaxis van JSON-pad. Het is gemaakt onder de Sampler die een reactie heeft.
- Maak een testplan
- Voeg een discussiegroep toe aan het testplan.
- Voeg Sampler HTTP-verzoek toe.
- Voeg het configuratie-element toe als 'HTTP header Manager'.
- Processor toevoegen als JSON Path-processor
- Voeg de JSR223-processor toe en selecteer de taal van de Bean-shell en geef een script op.
- Voeg luisteraar toe 'Bekijk de resultatenboom'.
- Voer de test uit.
De naam van het gemaakte veld is het veld waarin het resultaat is opgeslagen. $ .name in JSON-paduitdrukking vertegenwoordigt alle namen die in het resultaat voorkomen. 0 wedstrijdnummer is voor het kiezen van een willekeurige waarde. Als er in dat geval niets wordt geretourneerd, wordt dit weergegeven name_not gevonden
# 9) Boundary Extractor
Boundary extractor haalt gegevens uit het grenzen van de serverreactie nadat de sampler is uitgevoerd. Nadat de gegevens / waarden zijn geëxtraheerd, moet de templatestring worden gegenereerd en vervolgens worden de resultaten opgeslagen in de opgegeven variabelenaam.
Hoe te gebruiken:
- Maak een testplan
- Voeg draad toe aan het testplan
- Voeg een sampler toe HTTP-verzoek in de thread.
- Voeg Boundary extractor processor toe en vul de details in zoals hieronder getoond in de screenshot:
Naam van gemaakte variabele: Het resultaat wordt opgeslagen in de gemaakte variabelenaam die in dit veld wordt opgegeven.
Linkergrens : Waarde van de linkergrens die moet worden gevonden.
Rechter grens : Waarde van de juiste grens die moet worden gevonden.
- Voeg de JSR223-processor toe om het resultaat in logboeken te laten afdrukken.
# 10) Debug Post Processor
Deze processor wordt gebruikt als in het geval een sampler moet worden debuggen, deze als een kind aan die sampler wordt toegevoegd.
Veelgestelde vragen over postprocessor
V # 1) Kan JMeter worden gebruikt voor het testen van eenheden?
Antwoord : Ja, het kan worden gebruikt voor het testen van eenheden. Het kan worden gebruikt als een eenheidstesttool voor webservices, FTP, LDAP, Java-databaseconnectiviteit (JDBC) databaseverbindingen, TCP-verbindingen.
V # 2) Hoe sla ik een verzoektekst op in JMeter?
Antwoord : Om een verzoek op te slaan, kan de luisteraar 'View Result Tree' worden gebruikt.
Toevoegen-> Luisteraar-> Bekijk resultatenboom -> Configureer knop-> Selecteer in welk type gegevens moeten worden opgeslagen
V # 3) Wat is de uitvoeringsvolgorde van JMeter-elementen?
Antwoord Hieronder staat de uitvoeringsvolgorde van Jmeter-elementen wanneer er meerdere elementen in de threadgroep zijn.
- Configuratie-elementen
- Pre-processor (alleen als ze op een sampler worden toegepast)
- Timers (alleen als ze op een willekeurige sampler worden toegepast)
- Sampler
- Postprocessor (alleen als ze op een sampler worden toegepast)
- Beweringen (alleen als ze op een monsternemer worden toegepast)
- Luisteraars
Q # 4) Wat is JSR223 in JMeter?
Antwoord : JSR223 is een scripting-API voor Java-talen. JMeter heeft elementen zoals JSR223 Sampler, JSR223 Pre-processor, JSR223 Post-processor, JSR223 Listener. JSR223 helpt bij het uitvoeren van scripts die in verschillende talen zijn geschreven.
V # 5) Is JMeter geschikt voor API-testen?
Antwoord : Het is een open-source tool die kan worden gebruikt voor API-testen en voor functionele, prestatie-, belasting- en automatiseringstests.
Q # 6) Welke taal wordt gebruikt in JMeter?
Antwoord : Groovy-taal wordt meestal gebruikt en is geschikt omdat Groovy-scripttaal gemakkelijk te gebruiken is en kan worden geïntegreerd met Java om meer scriptpotentieel te vergroten.
Gevolgtrekking
Postprocessors, zoals de naam suggereert, rennen post de uitvoering van de sampler Alle processors spelen hun eigen rol en halen de gegevens uit verschillende reacties als Extractor voor reguliere expressies toepassingen Perl-type reguliere expressie om waarden uit de serverreactie te extraheren, Extractor voor CSS-selector gebruikt CSS-selector om gegevens uit te extraheren HTML-reacties
XPath-extractor toepassingen XPath Query-taal om gegevens uit te extraheren XML- of XHTML-reacties JSON-extractor toepassingen JMESPath-zoekopdracht taal. Resultaat Handler voor statusactie verwerkt het resultaat door de draad te laten stoppen als de sampler faalt. Boundary extractor haalt waarden uit de grenzen van de serverreactie.
<< PREV DE VOLGENDE
=> Klik hier voor De complete gratis training op JMeter (20+ video's)
Aanbevolen literatuur
- Xpath Extractor Post-Processor in JMeter
- C # Regex-zelfstudie: wat is een C # reguliere expressie
- C ++ regex-zelfstudie: reguliere expressies in C ++ met voorbeelden
- Java Regex-zelfstudie met voorbeelden van reguliere expressies
- JMeter-processors en controllers
- MongoDB reguliere expressie $ regex met voorbeeld
- Top 5 JMeter-plug-ins en hoe ze te gebruiken (met voorbeelden)
- Hoe en wanneer gebruik ik Postman Pre Request en Post Request Scripts?