jmeter processors controllers
Pregled predprocesorjev in krmilnikov v sistemu JMeter (del III):
=> Sledite obsežni seriji brezplačnih vadnic JMeter tukaj
Ta članek bo uporabnike vodil skozi uporabo predhodnih procesorjev, naknadnih procesorjev in krmilnikov v JMeteru. Krmilniki so zelo koristni, saj pripravijo vaše testne scenarije.
Morda boste želeli preizkusiti različne scenarije, v katerih želite konfigurirati lastno zaporedje zahteve, ki se pošlje strežniku, za spremljanje odzivnega časa in drugih dejavnikov uspešnosti.
Kaj se boste naučili:
- Predprocesorji
- Uporabniški parametri
- Časovna omejitev vzorca
- Krmilniki
- Primer v realnem času
- Predloga za snemanje JMeter
- Zaključek
- Priporočeno branje
Predprocesorji
To so elementi, ki se izvedejo pred izvajanjem vzorčevalnika. Predprocesor lahko priložite vzorčevalniku, za katerega želite nekaj spremeniti v zahtevi.
Najenostavnejši primer bi lahko bil dodajanje predprocesorja »Sample Timeout« z zahtevo HTTP, da bi se ta zahteva izvajala le določen čas. Zagotavlja tudi, da se ta sprememba izvede samo za nadrejeni vzorčevalnik.
Spodaj je nekaj predhodnih procesorjev, ki se uporabljajo v JMeter:
- Predobdelava lupine fižola
- Razčlenjevalnik povezav HTML
- Ponovno pisanje HTTP URL-ja
- Predprocesor JDBC
- Časovna omejitev vzorca
- Uporabniški parametri
Najpogosteje uporabljeni so v nadaljevanju razloženi s primeri. V svojih projektih boste morda potrebovali ali ne. Poskusite prepoznati scenarije, povezane z vašim projektom, in izvedite tiste, ki vam pomagajo pokrivati scenarije uspešnosti v realnem času.
Uporabniški parametri
Uporabniški parametri se uporabljajo za definiranje vrednosti za spremenljivke, preden se uporabijo v vzorčnikih. Ko JMeter izvede ta element predprocesorja, shrani vrednosti v spremenljivke, na katere se lahko sklicujejo kateri koli vzorčevalniki v isti skupini niti.
brezplačna alternativa hitrih knjig za mala podjetja
Če imate v »Uporabniških parametrih« več niti, kot je število uporabnikov, se bodo dodatne niti znova ponovile skozi vrednosti.
Na primer, v skupini niti imate 5 uporabnikov, v predprocesorju pa le 3, nato pa še 4thin 5thnit bo uporabil param1 in param2 .
Časovna omejitev vzorca
Ta predhodni procesor se uporablja za določanje trajanja časovne omejitve za zahteve.
Na primer če ste postavili čas vzorčenja iz 400 milisekund, bodo vse zahteve, ki trajajo več kot 400, imele neuspešen odziv. Glejte spodnje posnetke zaslona.
Krmilniki
Krmilniki so zelo pomembni pri izdelavi preskusnega načrta JMeter v realnem času. Določa zaporedje pošiljanja zahtev strežniku.
Na primer Če želite preizkusiti spletno aplikacijo, v katero želite, da se prijava izvede enkrat in poiščete, se zahteva izbira elementov ena za drugo za vse ponovitve. Krmilniki to omogočajo z upravljanjem toka zahteve, ki poteka na preizkušenem strežniku.
Spodaj so najpogosteje uporabljeni krmilniki v sistemu JMeter
- Preprost krmilnik
- Krmilnik modula
- Enkrat samo krmilnik
- Interleave Controller
- Loop Controller
- Če je Controller
- Za vsakega krmilnika
- Nadzornik snemanja itd.,
Preprost krmilnik
Preprosti krmilnik ne izvaja nobene posebne funkcije. Je le nekakšen vsebnik, v katerem lahko hranite podobne zahteve, da bo vaš testni načrt lahko razumljiv.
Loop Controller
Če želite, da neka posebna zahteva zažene več ponovitev, kot je določeno v skupini niti, jih lahko postavite pod Loop Controller in v nastavitve krmilnika vnesete število zank.
Primer: Če imate skupino niti z enim uporabnikom in 3 ponovitvami, se bodo vse vaše zahteve v tej skupini izvedle 3-krat. Zdaj, če imate dva vzorčevalnika HTTP pod krmilnikom zanke s številom zank 2, se bosta oba vzorčevalnika izvajala 1 * 3 * 2 = 6-krat.
Prosimo, glejte spodnje posnetke zaslona, ki to dodatno pojasnjujejo
Enkrat samo krmilnik
Ta krmilnik se uporablja, kadar želite neko določeno zahtevo zagnati le enkrat, tudi če imate več niti v skupini niti. Najenostavnejši primer, ki ga lahko upoštevamo, je »Pridobivanje domače strani spletnega mesta« ali »Prijava v spletno aplikacijo«. Scenarij v realnem času bi želel, da se to zgodi samo enkrat, druge zahteve, kot je iskanje ali urejanje / brisanje, pa večkrat.
Zahtevo, ki jo je treba izvršiti samo enkrat, lahko postavite pod Nadzornik samo enkrat. Za referenco si oglejte spodnji posnetek zaslona. Enkrat nastavitve samo krmilnika obidejo nastavitve nadrejene skupine niti.
Krmilnik snemanja
Tako kot preprosti krmilnik tudi nadzornik snemanja ne spreminja nobenega zaporedja zahtev, ki so poslane strežniku. Uporablja se s snemalnikom skriptov HTTP (S). Vse zahteve, ki so zabeležene s tem elementom, ki ni test, se shranijo pod krmilnik snemanja.
Določiti morate ciljni krmilnik, da shranite zabeležene zahteve, poslane strežniku.
Krmilnik snemanja in zapisovalnik skriptov HTTP (s) se prikažejo, ko preizkuševalci nimajo informacij o URL-jih in parametrih zahtev. Preprosto lahko posnamejo in zajamejo vse zahteve, ki zadenejo njihove strežnike. To deluje tako za mobilne kot tudi za spletne projekte.
Krmilnik prepustnosti
Ta krmilnik se uporablja tudi za nadzor poteka izvajanja. Kot je razvidno iz spodnjega izreza, je ta krmilnik nadalje razdeljen na dva dela:
Odstotek izvršitve - S to izbiro bo Jmeter izvedel le določen odstotek celotnih ponovitev vzorčevalnikov, nameščenih pod tem krmilnikom. Če želite to nadzorovati na ravni uporabnika, lahko potrdite tudi polje »Na uporabnika«.
Na primer, Skupina niti je konfigurirana tako, da ima 10 uporabnikov, število zank pa je 5. Zato je skupno število ponovitev 50. Če je% izvrševanja nastavljeno na 50%, bodo vsi vzorčevalniki pod krmilnikom pretoka izvedli samo 25 ponovitev (50% od 50).
Skupne izvedbe - To omogoča uporabnikom, da določijo število ponovitev neposredno za vzorčevalnike, ki jih vsebuje ta krmilnik.
Interleave Controller
Ta krmilnik vam omogoča, da povečate obseg preizkušanja zmogljivosti s spreminjanjem zaporedja na n načinov, tako da lahko preskusite obremenitev strežnika, ko aplikacije zadevajo zahtevo z različnimi zaporedji. Interleave Controller izbira alternativne vzorčevalnike pod njim.
Če se v tem bloku hranijo drugi krmilniki, kot je Simple Controller, interleave controller daje privilegij, da izbere vsak vzorčevalnik iz vsebnika za vsako ponovitev. Za nadaljnjo razlago upoštevajte spodnji testni načrt.
Jmeter bo torej ponavljal izmenično med krmilniki za vsako ponovitev. Zato bo zaporedje navedeno spodaj
Zahteva1 -> Zahteva3 -> Zahteva 5 - Zahteva2 -> Zahteva4 -> Zahteva6
Glejte spodnje rezultate JMeter s številom niti = 2 in številom zank = 2.
vprašanja in odgovori v intervjuju za java program
V zgornjem primeru je Jmeter prepletanje z naslednjo zanko / ponovitvijo. V Interleave Controller so nastavitve, ki lahko JMeter pošljejo nadomestne zahteve z vsako novo nitjo.
Oglejte si spodnje rezultate. To je uporabno v scenarijih, kjer želite zaporedne ali sočasne obremenitve, ki zadevajo strežnike z drugačnim zaporedjem zahteve iz iste naprave.
Naključni krmilnik
Deluje skoraj tako kot krmilnik Interleave, vendar vzorcev ne izbira po vrsti. Samo naključno izbere podkontrolerje in vzorčevalnike v njih.
Če je Controller
Če Controller deluje na podoben način, se izraz IF obravnava v katerem koli programskem jeziku. Pogoj se najprej preveri, nato pa se komponente pod tem vsebnikom izvršijo, če je pogoj TRUE, sicer se izvedejo elementi zunaj regulatorja IF.
Primer : Nadaljujemo z enim od prejšnjih primerov, ki vključuje Interleave Controller, zdaj pa je eden od dveh Interleave krmilnik pod IF Controller in pogojem »$ (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
Določanje in dodelitev vrednosti spremenljivki COUNT.
Opredelitev stanja v Če je Controller nastavitve. Jmeter bo potrdil ta pogoj in če bo TRUE, bo izvedel bloke pod tem vsebnikom.
Kot je razvidno iz spodnjega preskusnega načrta, se bodo v primeru, če je stanje pogoja ocenjeno kot samo, izvedli le Request3, Request4 in Request5 Lažno .
Medtem ko krmilniki
Ta krmilnik izvaja komponente pod njim, dokler pogoj ne postane napačen.
Na primer recimo, da imamo pogoj, medtem ko ($ (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.
Konfigurirajte konfiguracijski element »Števec« tako, da se začne pri 1 in nato poveča pri vsaki ponovitvi. Za več pojasnil glejte spodaj:
Preostalih krmilnikov se bomo dotaknili v naših video vajah.
Primer v realnem času
Upoštevajmo scenarij, v katerem ekipa za testiranje ne pozna URL-jev in parametrov vseh zahtev, ki zadevajo preskušani strežnik. Zdaj morajo za nalaganje preizkusiti strežnik, da zapišejo zahteve, nato pa obremenitev prilagodijo zaporedno ali sočasno in iz njih ustvarijo scenarije, da opravijo preizkušanje zmogljivosti.
Koraki
kako odprete datoteke jar
- Dodajte predlogo v Jmeter za nadzor snemanja
- V brskalniku nastavite proxy in izberite ena vrata v snemalniku skriptov HTTP (s)
- Zapišite zahteve
- Spremenite testni načrt in povečajte obremenitev
- Transakcije ustrezno razvrstite v skupine
- Preizkusite različne kombinacije zahteve
Predloga za snemanje JMeter
JMeter ima tudi nekaj vnaprej določenih predlog. V meniju Datoteka izberite možnost »Predloga«. Po izbiri predloge v oknu, ki se odpre, izberite možnost »Snemanje« in kliknite Ustvari.
Takoj ko izberete to snemalno predlogo, boste videli nekatere komponente, ki so že dodane v preskusnem načrtu.
- Snemalnik skriptov HTTP (s) v delovnem okolju
- Privzete nastavitve zahteve HTTP in upravitelj piškotkov HTTP
- Krmilnik snemanja pod skupino niti.
V brskalniku lahko nastavite proxy za pogovor s proxy strežnikom JMeter ali uporabite razširitev CHROME Blazemeter za snemanje zahtev in nato izvoz. jmx v Jmeter. Obstaja veliko drugih razširitev za snemanje skripta in nato izvoz v JMeter. Orodje BADBOY dobro deluje tudi z Jmeterom za snemanje spletnih in mobilnih zadetkov.
Kliknite na. jmx možnost izvoza posnete zahteve v Jmeter. Zdaj iz Jmetra odprite. jmx in si oglejte zahteve in parametre, povezane z vsako zahtevo.
Zaključek
Do zdaj se domneva, da ste se vsi že dobro seznanili z osnovno logiko JMeterja, kako simulira obremenitev, kako se igra z različnimi vrstami vzorčevalnikov, kako nadzirati potek izvajanja z uporabo Controllerja in uporabo spremenljivk in funkcije za zagon zank skozi iteracije. To vsekakor ni konec serije vaj o JMeteru.
Obstaja veliko video vadnic slediti temu, kar bo preizkuševalce z več rokami vodilo po različnih scenarijih v Jmetru in kako lahko vsako komponento JMeter najbolje uporabimo.
=> Tukaj si oglejte celoten seznam video vadnic JMeter
Prosimo, delite svoje komentarje ali vprašanja z nami.
Priporočeno branje
- Jmeter krmilniki 1. del
- Jmeter krmilniki 2. del
- Kako doseči korelacijo JMeter s primerom
- Delo z zahtevami HTTP v JMetru
- Delo z zahtevo FTP v JMetru
- Uporaba postprocesorja v JMetru (ekstraktor regularnega izraza)
- Top 5 vtičnikov JMeter in kako jih uporabiti (z primeri)
- JMeter Timers: Constant, BeanShell in Guassian Random Timer