how achieve jmeter correlation with example
Deze tutorial legt uit wat JMeter Correlation is, waarom we het nodig hebben en hoe je een correlatie in JMeter-scripts kunt bereiken:
Correlatie speelt een zeer vitale rol bij JMeter-scripting. Laten we eens kijken wat correlatie betekent.
Correlatie is de relatie tussen twee of meer variabelen. Het helpt bij het verkrijgen van informatie voor de relatie op een manier waarop de gebruiker kan beslissen voor toekomstige planning of te ondernemen actie.
In deze tutorial leer je hoe je een correlatie kunt bereiken in JMeter-scripts.
=> Klik hier voor De complete gratis training op JMeter (20+ video's)
Wat je leert:
JMeter Correlation Video-zelfstudie
rest interviewvragen en antwoorden voor ervaren
Correlatie is in feite het extraheren van waarde uit een van de verzoeken die kunnen worden gebruikt in het volgende verzoek of een van de verzoeken die verder moeten worden uitgevoerd.
Om waarden uit een verzoek te halen, heb je processors nodig. Pre-processors zoals HTMLLinkParser kunnen alle links extraheren van een pagina die als reactie is ontvangen.
In de meeste gevallen worden postprocessors zoals XPath en Regular Expression Extractor gebruikt om waarden uit het antwoord te extraheren en vervolgens de waarde in een variabele op te slaan. Nu kan dezelfde variabele worden gebruikt in het volgende verzoek of elk verzoek dat later moet worden uitgevoerd.
Meestal zou je zien dat JMeter in sommige gevallen sessie, kookt, inloggegevens vastlegt en deze vervolgens voor andere verzoeken als parameter gebruikt.
Inzicht in JMeter-correlatie
Deze tutorial geeft je een duidelijk begrip van waarom en waar we correlatie nodig hebben in JMeter-scripting. We zullen ook zien hoe de correlatie tot stand komt met een voorbeeld.
Waar hebben we correlatie nodig
Het wordt gebruikt wanneer dynamische waarden uit het antwoord van eerdere verzoeken nodig zijn om op verdere verzoeken te reageren.
Prestatietests voor Statische website vereist geen maatwerk , kan het werken met de normale functionaliteit van record en draaien met het aantal threads, dus de correlatie is niet vereist in statische websites.
Tegenwoordig hebben de meeste websites dynamische inhoud die wordt geretourneerd door de webserver. Voor elk iteratief verzoek heeft het dynamische antwoord altijd verschillende gegevens in ruil. Om dezelfde correlatie aan te kunnen, is vereist voor dynamische websites.
Waarom hebben we correlatie nodig?
Correlatie voor dynamische reacties werkt op een manier dat het de dynamische waarde uit het antwoord extraheert en deze in een variabele plaatst die verder wordt gebruikt door de vereiste verzoeken, zodat het script niet mislukt.
Voorbeeld: In het geval dat een script wordt gemaakt waarmee een gebruiker kan inloggen en andere activiteiten op de homepagina kan uitvoeren, werkt het script slechts een keer en zal het de volgende keer mislukken, aangezien de gebruiker zich voor de eerste sessie aanmeldt, worden variabelen dynamisch gemaakt en deze sessievariabelen helpen bij de authenticatie van de activiteiten die worden uitgevoerd op de opeenvolgende verzoeken.
Dus hier we moeten webverzoeken en dynamische variabelen met elkaar in verband brengen om het script succesvol te maken, wat op twee manieren kan worden gedaan.
Eén manier is dat de ontwikkelaar variabelen ontdekt die moeten worden gecorreleerd en deze in opeenvolgende verzoeken in kaart brengt om te worden vervangen. Dit is een handmatig proces.
Het handmatige proces is alleen succesvol voor kleine scripts omdat ze minder correlatiepunten hebben en naarmate het aantal te correleren variabelen toeneemt, neemt ook het aantal kansen op fouten toe.
De correlatie van het grote script moet worden geautomatiseerd, omdat dit zowel de inspanningen als de tijd zal verminderen en ook de kans op fouten zal er niet zijn.
Hoe correlatie kan worden bereikt
JMeter-correlatie kan worden uitgevoerd
- Met behulp van postprocessor 'Extractor voor reguliere expressies'.
- Variabele die kan worden hergebruikt overal waar dynamische gegevens aanwezig zijn.
Laten we eens kijken naar een voorbeeld van hoe 'Regular expression extractor' wordt gebruikt om de variabelen te correleren.
Extractor voor reguliere expressies zal worden toegevoegd aan het sampler-verzoek waarvan de gebruiker de waarde wil ophalen.
Sampler -> Toevoegen-> Post Processor -> Extractor voor reguliere expressies.
De opeenvolgende verzoeken kunnen een variabele waarde gebruiken om dynamisch in kaart te brengen.
Hieronder is een voorbeeld om de correlatie in JMeter te begrijpen.
Stappen
# 1) Voeg een discussiegroep toe aan het testplan.
#twee) Voeg Sampler 'HTTP Request' toe aan het testplan en hernoem het Request 1 en zet de servernaam of IP van de website.
# 3) Voeg postprocessor 'Extractor van reguliere expressie' toe aan het testplan om waarde te extraheren uit het antwoord van Sampler Request 1.
Zodra de extractor is toegevoegd, de onderstaande waarden moeten worden ingevuld om de waarde te extraheren:
- Naam van de gemaakte variabele: Het vertegenwoordigt de naam van de JMeter-variabele waar de geëxtraheerde waarde wordt opgeslagen.
- Reguliere expressie: Het is de uitdrukking om de gegevens van het antwoord te definiëren.
- Sjabloon : Sjablonen verwijzen naar de groepen reguliere expressies. $ 1 $ syntaxis vertegenwoordigt groep 1, evenzo $ 2 $ syntaxis vertegenwoordigt groep 2, enzovoort.
- Wedstrijdnummer: Als 0 wordt opgegeven, kiest JMeter een willekeurige overeenkomst.
- Standaardwaarde: De standaardwaarde wordt in aanmerking genomen als er geen waarde overeenkomt met de reguliere expressie. De gebruiker kan de standaardwaarde opgeven zoals hij wil als 'Authenticatie mislukt', 'Niet gevonden' enz. Alles wat de fout definieert.
# 4) Voeg nog een Sampler 'HTTP Request' toe en noem deze Request2. Verzoekgegevens van deze Sampler worden geëxtraheerd uit de antwoordgegevens van het eerste toegevoegde HTTP-verzoek.
Voeg het pad naar het verzoek toe. De naam van de server of het IP-adres is hier niet vereist. Het pad moet worden gedefinieerd met $ {Name}
# 5) Voeg Listener 'View Results Tree' toe aan het testplan om de correlatie tussen Request 1 en Request 2 te zien.
# 6) Voer het testplan uit en bekijk het resultaat. Bij Request 2 worden enkele waarden uit Request1 gehaald.
Veelgestelde vragen over JMeter-correlatie
V # 1) Hoe doe je correlatie en parametrering in JMeter?
Antwoord : Parametrering wordt gebruikt wanneer verschillende gebruikers in grote aantallen nodig zijn in een script. De verschillende gebruikers en gegevens kunnen worden opgehaald met behulp van CSV-bestanden. Dus als een script wordt uitgevoerd met een threadtelling van 50, haalt het elke keer een nieuw gebruikersdetail op uit het CSV-bestand.
Om de correlatie af te handelen, wordt de post-processor gebruikt om de waarde van de variabele uit het eerste verzoek voor het volgende verzoek te extraheren.
Parametrering zoekt naar invoerwaarden van de gebruiker, terwijl Correlation uitkijkt naar gegevens die door de server worden geretourneerd voor het gecreëerde verzoek.
Vraag 2) Hoe gaat JMeter om met dynamische waarden?
Antwoord : Om dynamische JMeter-waarden af te handelen, moeten twee stappen worden uitgevoerd, d.w.z. één om de dynamische waarde uit het antwoord op te halen en op te slaan en ten tweede om die waarde in het opeenvolgende verzoek te gebruiken. Dit wordt gedaan met behulp van de postprocessor voor extractie van reguliere expressies.
V # 3) Hoe correleert JMeter header-waarden?
beste software voor het herstellen van externe harde schijven
Antwoord : Om header-waarden in JMeter te correleren is 'Regular expression extractor' post-processor vereist.
- In dat Toepassen op - 'Hoofdvoorbeeld' en voor de veld om 'Response headers' te controleren moet worden geselecteerd.
- Zet de waarden voor alle velden.
- De naam die is opgegeven in de naam van de gemaakte variabele, heeft de waarde van de variabele die is opgeslagen in JMeter. Geef een expressie op in de sectie Referentie-expressie, het zal de werkelijke waarde van de parameter van de antwoordheader kiezen.
- Geef de sjabloonnaam op als $ 1 $.
- Om de waarde te krijgen, gebruikt u $ en de variabelenaam tussen accolades, zoals $ {Variabelenaam}
Gevolgtrekking
Correlatie is een zeer belangrijk aspect van JMeter. Statische websites vereisen geen correlatie, maar dynamische sites vereisen correlatie omdat de server reageert op dynamische variabelen die elke keer veranderen. om de scripts keer op keer opnieuw te gebruiken, is de correlatie tussen de variabelewaarden vereist.
Dat is de reden waarom 'Extractor van reguliere expressies' wordt gebruikt om variabele waarde uit één verzoek te extraheren om in opeenvolgende verzoeken te gebruiken.
<< PREV DE VOLGENDE
Aanbevolen literatuur
- JMeter Timers: Constant, BeanShell en Guassian Random Timer
- Jmeter Controllers Deel 1
- Jmeter Controllers Deel 2
- Top 5 JMeter-plug-ins en hoe ze te gebruiken (met voorbeelden)
- Werken met FTP-verzoek in JMeter
- Postprocessor gebruiken in JMeter (Extractor voor reguliere expressie)
- JMeter-variabelen en functies
- Database testen met JMeter