Controlere în JMeter: Buclă, Simplu, Tranzacție, Modul, Aleatoriu
Ce este controlerul logic?
Controllerele logice vă permit să definiți ordinea procesării cererii într-un Thread. Vă permite să controlați „când” să trimiteți o solicitare de utilizator către un server web. De exemplu, puteți utiliza controlere aleatoare pentru a trimite solicitări HTTP către server în mod aleatoriu
Controlerele logice determină comandă în care se execută cererea utilizatorului.
Unele controlere logice utilizate în mod obișnuit sunt mai jos:
Controler de înregistrare
JMeter poate să record Interesele Testarea trepte; un controler de înregistrare este a înlocuitor pentru a stoca acești pași de înregistrare.
Controler simplu
Controlerul simplu este doar un recipientul pentru cererea utilizatorului.
Controler de buclă
Loop Controller face ca cererea utilizatorului să ruleze un anumit număr de ori sau fugi pentru totdeauna Așa cum se arată în figura:
Controler aleatoriu
Random Controller face ca toate cererile utilizatorului să ruleze aleatoriu ordine în fiecare perioadă de buclă.
De exemplu, aveți 3 solicitări de utilizator către site-ul web http://www.google.com în următoarea ordine:
- Cerere HTTP
- Solicitare FTP
- Solicitare JDBC
Aceste 3 solicitări ar trebui să ruleze de 5 ori. Un total de 15 solicitări ale utilizatorilor vor fi trimise către serverul Google de către JMeter.
In secventiala comanda, cererile sunt trimise secvențial în următoarea ordine:
Solicitare HTTP ->Solicitare FTP->Solicitare JDBC
pentru fiecare buclă.
In aleator comanda, cererile sunt trimise ca la întâmplare,
Solicitare FTP ->Solicitare HTTP->Solicitare JDBC
Or
Solicitare JDBC ->Solicitare FTP->Solicitare HTTP
Pentru fiecare buclă.
Controler de modul
Scopul Module Controller este de a adăuga modularitate JMeter.
Ideea generală este că aplicațiile web constau din mici unități de funcționalitate (adică Conectare, Creare Cont, Deconectare...). Această funcționalitate poate fi stocată în Controler simplu ca „module”. Module Controller va alege ce modul trebuie să ruleze.
Luați în considerare următorul scenariu -
Vrei să simulezi:
- 50 utilizatori delogare,
- 100 utilizatori logare
- 30 utilizatori căutare www.google.com
Poți să folosești JMeter pentru a crea 3 module. Fiecare modul simulează fiecare activitate de utilizator: Conectare, Deconectare și Căutare.
Controlerul Module alege modulul care trebuie să ruleze.
Alți controlori importanți
- Intercalează Controller: preia și face unu a cererii utilizatorului rulat fiecare buclă a firului.
- Runtime Controler: controale pentru cat timp copiii săi au voie să alerge.
De exemplu, dacă ați specificat Runtime Controller 10 secunde, JMeter va rula testul timp de 10 secunde.
- tranzacție Controller: măsoară timpul total luat la termina o execuție de probă
- Include Controler: este conceput pentru a utiliza un plan de testare extern. Acest controler vă permite să utilizați mai multe planuri de testare în JMeter. Vezi detalii în JMeter Test de performanta.
Exemplu de controler de buclă
Această secțiune vă arată instrucțiuni pas cu pas pentru a adăuga Controler de buclă setați la planul dvs. actual de testare a performanței.
Controlerul buclei face ca eșantionarele să ruleze de un anumit număr de ori, în plus față de valoarea buclei pe care ați specificat-o pentru grupul de fire. De exemplu, dacă tu
- Adăugați o solicitare HTTP la un controler de buclă cu un număr de bucle de 50
- Configurați numărul de bucle ale grupului de fire la 2
- Apoi, JMeter va trimite un total de 50 * 2 = 100 de solicitări HTTP.
Aceasta este foaie de parcurs din acest exemplu:
Pasul 1) Configurarea grupului de fire
We reutilizarea Pasul 1, 2 din tutorial JMeter Test de performanta.
-
Adăugați un grup de fire
Click dreapta pe Planul de testare și adăugați un nou grup de fire: Adăuga-> Fire (Utilizatori) ->Grup de fire
Dar în panoul de control al grupului de fire, introduceți proprietățile firului după cum urmează:
Va face unu solicitarea utilizatorului către serverul web google.com și rulați-o 2 ori.
-
Adăuga JMeter element
Adăugați solicitarea HTTP implicită la www.google.com.
-
Adăugarea controlerului de buclă
Faceți clic dreapta pe Thread Group -> Logic Controller -> Loop Controller
Pasul 2) Configurarea Loop Controller
Adăugați valoarea 50 în câmpul Loop Count, ca în figura de mai jos. Va face unu cererea utilizatorului către serverul web google.com rulați-l 50 de ori, în plus față de valoarea buclei =2, ați specificat pentru grupul de fire de mai sus. Deci JMeter va trimite un total de 2 * 50 = 100 Solicitări HTTP.
Faceți clic dreapta pe Loop Controller, Add -> Sampler -> HTTP request
Pasul 3) Adăugați rezultatele vizualizării în tabel
Reutilizam Pasul 2 în Timer pentru a adăuga Vizualizare rezultate în tabel
Deci, planul de testare este prezentat în figura de mai jos
Pasul 4) Rulați testul
Acum reveniți Vizualizați rezultatele în tabel, faceți clic pe butonul Start din bara de meniu (Ctrl+R) pentru a rula un test
După cum se arată în figura de mai jos, JMeter simulează o cerere de utilizator, care este trimis de 100 de ori, către serverul web http://www.google.com/. Testul este oprit după ce o solicitare de utilizator a fost trimisă de 100 de ori.
Depanare
- Dacă vă confruntați cu problema în timp ce rulați scenariul de mai sus... faceți următoarele
- Verificați dacă vă conectați la internet printr-un proxy. Dacă da, eliminați proxy-ul.
- Deschideți o nouă instanță de Jmeter
- Deschideți ControllerTestPlan.jmx în Jmetru
- Faceți clic pe Grup de fire -> Vedeți rezultatul în tabel
- Rulați testul










.png)


.png)


