jmeter processors controllers
Prehľad predprocesorov a radičov v JMeter (časť III):
=> Tu postupujte podľa komplexnej série bezplatných tutoriálov JMeter
Tento článok by mal sprevádzať používateľov používaním predprocesorov, postprocesorov a ovládačov v JMeter. Ovládače sú veľmi užitočné, pretože vytvárajú vaše testovacie scenáre.
Možno budete chcieť otestovať rôzne scenáre, v ktorých chcete nakonfigurovať vlastnú postupnosť odosielania žiadosti na server, aby ste mohli sledovať čas odozvy a ďalšie výkonové faktory.
Čo sa dozviete:
- Predbežné procesory
- Užívateľské parametre
- Ukážka časového limitu
- Kontrolóri
- Príklad v reálnom čase
- Šablóna záznamu JMeter
- Záver
- Odporúčané čítanie
Predbežné procesory
Toto sú prvky, ktoré sa vykonávajú pred vykonaním vzorkovača. Môžete pripojiť predbežný procesor so vzorníkom, pre ktorý chcete vykonať nejaké zmeny v žiadosti.
Najjednoduchším prípadom by mohlo byť pridanie preprocesora „Sample Timeout“ s požiadavkou HTTP, aby táto požiadavka bežala iba definovanú dobu. Zaisťuje tiež, aby sa táto úprava vykonala iba pre nadradený vzorkovník.
Nižšie uvádzame niektoré z predbežných procesorov používaných v JMeter:
- Predbežný procesor Bean Shell
- Analyzátor odkazov HTML
- Prepísanie HTTP URL
- Preprocesor JDBC
- Ukážka časového limitu
- Užívateľské parametre
Najčastejšie používané sú vysvetlené nižšie s príkladmi. Možno vo svojich projektoch budete potrebovať všetky. Pokúste sa identifikovať scenáre týkajúce sa vášho projektu a implementujte tie, ktoré vám pomôžu pokryť scenáre výkonu v reálnom čase.
Užívateľské parametre
Užívateľské parametre sa používajú na definovanie hodnôt premenných pred ich použitím v Sampleroch. Keď JMeter vykoná tento prvok pred procesorom, uloží hodnoty do premenných, na ktoré môžu odkazovať ľubovoľné vzorkovače v rámci tej istej skupiny vlákien.
sql skúška otázky a odpovede pdf
Ak máte viac vlákien, ako je počet používateľov v sekcii „Používateľské parametre“, potom sa extra vlákna opätovne iterujú prostredníctvom týchto hodnôt.
Napríklad, vo svojej skupine vlákien máte 5 používateľov, ale v predspracovaní iba 3, potom vašich 4tha 5thvlákno použije param1 a param2 .
Ukážka časového limitu
Tento predprocesor sa používa na definovanie času časového limitu pre požiadavky.
Napríklad, Ak ste nastavili čas vzorkovania na 400 milisekúnd, potom všetky žiadosti, ktoré si vyžadujú čas> 400, budú mať neúspešnú odpoveď. Pozrite si screenshoty nižšie.
Kontrolóri
Kontrolóri sú veľmi dôležití pri zostavovaní plánu testov JMeter v reálnom čase. Definuje postupnosť, v ktorej sa požiadavky odosielajú na server.
Napríklad, Ak chcete otestovať webovú aplikáciu, v ktorej chcete vykonať jednorazové prihlásenie, a vyhľadávať, výber položiek vyžaduje postupné postupovanie pri všetkých iteráciách. Radiče to umožňujú riadením toku požiadaviek smerujúcich na testovaný server.
Nižšie sú uvedené najbežnejšie používané radiče v JMeter
- Jednoduchý ovládač
- Ovládač modulu
- Raz iba kontrolór
- Ovládač vkladania
- Ovládač slučky
- Ako ovládač
- Pre každého kontrolóra
- Radič záznamu a pod.,
Jednoduchý ovládač
Jednoduchý ovládač nevykonáva žiadnu konkrétnu funkciu. Je to len druh kontajnera, v ktorom si môžete ponechať svoje podobné požiadavky, aby bol váš testovací plán ľahko zrozumiteľný.
Ovládač slučky
Ak chcete, aby nejaká konkrétna požiadavka spustila viac iterácií, ako je uvedené v skupine vlákien, môžete ich umiestniť pod radič Loop Controller a v nastaveniach radiča zadať počet slučiek.
Príklad: Ak máte skupinu vlákien s 1 používateľom a 3 iteráciami, všetky vaše požiadavky v rámci tejto skupiny sa spustia trikrát. Teraz, ak máte pod radičom slučiek s počtom slučiek 2 dva Sampler HTTP, oba tieto Samplery by bežali 1 * 3 * 2 = 6 krát.
Prečítajte si nasledujúce snímky obrazovky, ktoré to ďalej vysvetľujú
Raz iba kontrolór
Tento radič sa používa, ak chcete spustiť určitú konkrétnu požiadavku iba raz, aj keď máte v skupine vlákien viac vlákien. Najjednoduchším príkladom, ktorý je možné považovať za, je „Načítanie domovskej stránky webu“ alebo „Prihlásenie do webovej aplikácie“. Podľa scenára v reálnom čase by sa malo stať, aby sa to stalo iba raz, a aby sa ďalšie žiadosti, ako napríklad vyhľadávanie alebo úprava / odstránenie, vyskytli viackrát.
Žiadosť, ktorá sa má vykonať iba raz, je možné vložiť pod správcu Once Only Controller. Referenčný obrázok nájdete nižšie. Nastavenia Iba raz radič obchádzajú nastavenia nadradenej skupiny vlákien.
Radič záznamu
Rovnako ako Simple Controller, Recording Controller nemení žiadnu postupnosť požiadaviek, ktoré sa posielajú na server. Používa sa s Záznamníkom skriptov HTTP (S). Všetky požiadavky, ktoré sa zaznamenávajú pomocou tohto netestovacieho prvku, sa ukladajú pod kontrolór záznamu.
Musíte uložiť cieľový radič, aby ste uložili zaznamenané požiadavky vykonané na server.
Kontrolér záznamu a záznamník skriptov HTTP (s) sa dostanú do obrazu, keď testéri nemajú informácie o adresách URL a parametroch požiadaviek. Môžu jednoducho zaznamenať a zachytiť všetky požiadavky týkajúce sa ich serverov. Funguje to tak pre mobilné, ako aj pre webové projekty.
Kontrolór priepustnosti
Tento radič sa tiež používa na riadenie toku vykonávania. Ako je zrejmé z nižšie uvedeného orezania, tento ovládač je ďalej rozdelený na dve časti:
Percento vykonania - Tento výber spôsobí, že Jmeter vykoná iba určité percento z celkových iterácií pre vzorkovače umiestnené pod týmto radičom. Môžete tiež začiarknuť políčko „Na používateľa“, aby ste to mohli ovládať na úrovni používateľa.
Napríklad, Skupina vlákien je nakonfigurovaná tak, aby mala 10 používateľov, a počet slučiek je 5. Preto je celkový počet iterácií 50. Ak je nastavenie% spustenia nastavené na 50%, potom všetky vzorkovače v rámci radiča priepustnosti vykonajú iba 25 iterácií (50% z 50).
Celkový počet prevedení - To umožňuje používateľom určiť počet iterácií priamo pre vzorkovače obsiahnuté v tomto radiči.
Ovládač vkladania
Tento radič vám umožňuje zväčšiť rozsah vášho testovania výkonu úpravou sekvencie mnohými spôsobmi, aby ste mohli otestovať zaťaženie servera, keď aplikácie narážajú na požiadavku s rôznymi sekvenciami. Ovládač Interleave Controller vykonáva alternatívny výber so vzorkami pod ním.
V prípade, že pod týmto blokom zostávajú ďalšie radiče ako Simple Controller, dáva radič vkladania oprávnenie vyberať po jednom pre každý iterátor jeden vzorkovač z kontajnera. Ak to chcete ďalej vysvetliť, zvážte nižšie uvedený plán testov.
Takže Jmeter bude iterovať alternatívne medzi radičmi pre každú iteráciu. Preto bude sekvencia uvedená nižšie
Žiadosť1 -> Žiadosť3 -> Žiadosť 5 - Žiadosť2 -> Žiadosť4 -> Žiadosť6
Prečítajte si nižšie uvedené výsledky JMeter s počtom vlákien = 2 a počtom slučiek = 2.
najlepšie weby na stiahnutie hudby zadarmo pre telefóny Android
Vo vyššie uvedenom príklade Jmeter vkladá nasledujúcu slučku / iteráciu. V radiči prekladania sú nastavenia, vďaka ktorým môže JMeter posielať alternatívne požiadavky s každým novým vláknom.
Nižšie nájdete výsledky. To je užitočné v scenároch, keď chcete, aby servery zasiahli sekvenčné alebo súčasné zaťaženie s rôznou postupnosťou požiadavky z rovnakého počítača.
Náhodný radič
Funguje takmer ako radič Interleave, ale nevyberá vzorkovače v poriadku. Iba náhodne vyberie podradiče a vzorkovače v nich.
Ako ovládač
Ak radič pracuje podobným spôsobom, s výrazom IF sa zaobchádza v ľubovoľnom programovacom jazyku. Podmienka sa najskôr overí a potom sa komponenty v tomto kontajneri vykonajú, ak je podmienka TRUE, inak sa vykonajú prvky mimo radiča IF.
Príklad : Pokračovaním v jednom z predchádzajúcich príkladov zahŕňajúcich radič vkladania, jeden z dvoch radičov vkladania bol ponechaný pod radičom IF a podmienkou „$ (COUNT)<10 is added as a condition. Variable COUNT is defined in config element “User Defined Variables” and is given a value equal to 11. Configuration is described below
Definovanie a priradenie hodnoty k premennej COUNT.
Definujúci stav v Ako ovládač nastavenie. Jmeter overí túto podmienku a ak bude mať hodnotu TRUE, vykoná bloky pod týmto kontajnerom.
Ako je zrejmé z nižšie uvedeného plánu testov, v prípade, že je podmienka IF vyhodnotená ako, sa vykonajú iba požiadavky 3, 4 a 5 Falošné .
Zatiaľ čo kontrolóri
Tento radič vykonáva komponenty pod ním, kým sa stav nestane nesprávnym.
Napríklad, povedzme, že máme podmienku while ($ (count)<10), it will execute the child elements until the condition is false. To test this, there should be a counter which gets increment or decrement on each iteration and then condition is evaluated. Config Element “Counter” can be used to serve this purpose.
Nakonfigurujte konfiguračný prvok „Počítadlo“ tak, aby začínal na 1 a potom sa zvyšoval pri každej iterácii. Ďalšie vysvetlenie nájdete nižšie:
Zvyškom ovládacích prvkov sa dotkneme v našich videonávodoch.
Príklad v reálnom čase
Uvažujme o scenári, v ktorom testovací tím nepozná adresy URL a parametre všetkých požiadaviek zaslaných na testovaný server. Teraz, aby mohli test servera načítať, musia zaznamenať požiadavky a potom postupne alebo súčasne modulovať zaťaženie a vytvoriť z nich scenáre na vykonanie testovania výkonu.
Kroky
ako napísať príklad z testovacieho prípadu
- Pridajte šablónu do Jmeter pre radič záznamu
- Vo svojom prehliadači nastavte proxy server a v Portu skriptov HTTP (s) vyberte rovnaký port
- Zaznamenajte žiadosti
- Upravte plán testov a zvýšte zaťaženie
- Zoskupte transakcie podľa toho
- Vyskúšajte rôzne kombinácie požiadaviek
Šablóna záznamu JMeter
JMeter má tiež preddefinovanú šablónu. V ponuke Súbor vyberte možnosť „Šablóna“. Po výbere šablóny vyberte v okne, ktoré sa otvorí, možnosť „Záznam“ a kliknite na Vytvoriť.
Hneď ako vyberiete túto šablónu záznamu, uvidíte niektoré komponenty, ktoré už boli pridané do plánu testovania.
- Záznamník skriptov HTTP (s) v pracovnej lavici
- Predvolené požiadavky HTTP a správca súborov cookie HTTP
- Radič záznamu pod skupinou vlákien.
Môžete buď urobiť nastavenie proxy servera vo svojom prehliadači, aby ste hovorili s proxy serverom JMeter, alebo použiť CHROME Extension Blazemeter na zaznamenanie požiadaviek a následný export. súbor jmx do Jmeter. Existuje mnoho ďalších rozšírení na zaznamenanie skriptu a jeho export do JMeteru. Nástroj BADBOY tiež dobre funguje s Jmetrom na zaznamenávanie webových aj mobilných zásahov.
Kliknite na. jmx možnosť exportovať zaznamenanú požiadavku do Jmeter. Teraz od Jmeter otvorte. jmx a pozrite si požiadavky a parametre spojené s každou požiadavkou.
Záver
Teraz sa predpokladá, že ste sa už všetci museli oboznámiť so základnou logikou JMeteru, ako simuluje zaťaženie, ako hrať s rôznymi typmi samplerov, ako riadiť priebeh vykonávania pomocou radiča a používať premenné a funkcie na spustenie slučiek naprieč iteráciami. To určite nie je koniec série návodov na JMeter.
Existuje veľa videonávodov nasledovať, ktoré povedú testerov s viacerými rukami k rôznym scenárom v Jmetri a k tomu, ako je možné čo najlepšie využiť jednotlivé komponenty JMeteru.
=> Kompletný zoznam videonávodov JMeter nájdete tu
Podeľte sa s nami o svoje pripomienky alebo otázky.
Odporúčané čítanie
- Ovládače Jmeter, časť 1
- Ovládače Jmeter, časť 2
- Ako dosiahnuť koreláciu JMeter s príkladom
- Práca s požiadavkami HTTP v JMeter
- Práca s požiadavkou FTP v JMeter
- Používanie postprocesora v JMeter (extraktor regulárnych výrazov)
- Top 5 doplnkov JMeter a ako ich používať (s príkladmi)
- JMeter Timers: Constant, BeanShell And Guassian Random Timer