Kontroleri u JMeteru: Loop, Simple, Transaction, Module, Random

Sadržaj:

Anonim

Što je logički kontroler?

Logički kontroleri omogućuju vam definiranje redoslijeda obrade zahtjeva u niti. Omogućuje vam kontrolu "kada" slati korisnički zahtjev na web poslužitelj. Na primjer, možete koristiti nasumične kontrolere za slučajno slanje HTTP zahtjeva poslužitelju

Logički kontroleri određuju redoslijed izvršavanja korisničkog zahtjeva.

U nastavku su navedeni neki najčešće korišteni logički kontroleri:

Kontroler snimanja:

JMeter može snimiti vaše korake testiranja; kontroler snimanja je rezervirano mjesto za pohranu ovih koraka snimanja.

Jednostavan kontroler:

Simple Controller je samo spremnik za zahtjev korisnika.

Loop Controller:

Loop Controller čini da se korisnički zahtjev pokrene određeni broj puta ili da se pokrene zauvijek, kako je prikazano na slici:

Slučajni kontroler:

Random Controller čini da se svi korisnički zahtjevi izvršavaju nasumičnim redoslijedom u svakom razdoblju petlje.

Na primjer, imate 3 zahtjeva korisnika za web stranicu http://www.google.com sljedećim redoslijedom:

  1. HTTP zahtjev
  2. FTP zahtjev
  3. JDBC zahtjev

Ova 3 zahtjeva trebala bi se pokrenuti 5 puta. Ukupno 15 korisničkih zahtjeva poslat će Googleovom poslužitelju JMeter.

U sekvencijalnom redu, zahtjevi se šalju u nizu u sljedećim redoslijedom:

HTTP zahtjev -> FTP zahtjev-> JDBC zahtjev

za svaku petlju.

U slučajnom redoslijedu, zahtjevi se šalju kao slučajno,

FTP zahtjev -> HTTP zahtjev-> JDBC zahtjev

Ili

JDBC zahtjev -> FTP zahtjev-> HTTP zahtjev

Za svaku petlju.

Upravljač modula:

Cilj kontrolera modula je dodati JMeteru modularnost.

Općenita je ideja da se web aplikacije sastoje od malih funkcionalnih jedinica (npr. Prijava, stvaranje računa, odjava ...). Ova se funkcija može pohraniti u Simple Controller kao "moduli". Upravljač modulom će odabrati koji modul treba pokrenuti.

Razmotrite sljedeći scenarij -

Želite simulirati:

  • Odjava 50 korisnika ,
  • 100 korisnika koji se prijavljuju
  • 30 korisnika pretražuje www.google.com

Pomoću JMetera možete stvoriti 3 modula. Svaki modul simulira svaku korisničku aktivnost: prijavu, odjavu i pretraživanje.

Upravljač modula bira koji modul treba pokrenuti.

Ostali važni kontroleri:

  • Interleave Controller: preuzima i pokreće jedan zahtjev korisnika u svakoj petlji niti.
  • Runtime Controller: kontrolira koliko dugo smiju trčati njegova djeca.

Na primjer, ako ste odredili Runtime Controller 10 sekundi, JMeter će pokrenuti vaš test 10 sekundi.

  • Transaction Controller: mjeri ukupno vrijeme potrebno za dovršenje testa
  • Uključi kontroler: dizajniran je za upotrebu vanjskog plana ispitivanja. Ovaj kontroler omogućuje vam korištenje više planova ispitivanja u JMeteru. Pogledajte detalje u JMeter ispitivanju performansi.

Primjer upravljača petlje

Ovaj odjeljak prikazuje vam detaljne upute za dodavanje Loop Controllera postavljenog u vaš trenutni plan ispitivanja performansi.

Loop Controller omogućuje da se sampleri pokreću određeni broj puta, uz vrijednost petlje koju ste naveli za grupu niti. Na primjer, ako vi

  • Dodajte jedan HTTP zahtjev u kontroler petlje s brojem petlje 50
  • Konfigurirajte broj petlji grupe niti na 2
  • Tada će JMeter poslati ukupno 50 * 2 = 100 HTTP zahtjeva.

Ovo je putokaz ovog primjera:

Korak 1) Konfiguriranje grupe niti

Mi ponovno koristiti na korak 1, 2 u udžbenik JMeter Ispitivanje.

  1. Dodaj grupu niti

Desnom tipkom miša kliknite testni plan i dodajte novu grupu niti: Dodaj -> Teme (korisnici) -> Grupa niti

Ali na upravljačkoj ploči grupe niti unesite Svojstva niti na sljedeći način:

Izvršit će jedan korisnički zahtjev na web poslužitelj google.com i pokrenuti ga dva puta.

  1. Dodajte JMeter elemente

Dodajte zadani HTTP zahtjev na www.google.com.

  1. Dodavanje kontrolera petlje

Desni klik na grupu niti -> Logic Controller -> Loop Controller

Korak 2) Konfiguriranje kontrolera petlje

Dodajte vrijednost 50 u polje Loop Count kao ispod slike. Izvršit će jedan korisnički zahtjev web serveru google.com pokrenuti ga 50 puta, uz vrijednost petlje = 2, koju ste naveli za Thread Group iznad. Dakle, JMeter će poslati ukupno 2 * 50 = 100 HTTP zahtjeva.

Desnom tipkom miša kliknite Loop Controller, Dodaj -> Sampler -> HTTP zahtjev

Korak 3) Dodajte rezultate prikaza u tablicu

Ponovno koristimo korak 2 u Timeru za dodavanje rezultata prikaza u tablici

Dakle, plan ispitivanja prikazan je na donjoj slici

Korak 4) Pokrenite test

Sada vratite Pregled rezultata u tablici, kliknite gumb Start na traci izbornika (Ctrl + R) da biste pokrenuli test

Kao što je prikazano na donjoj slici, JMeter simulira jedan korisnički zahtjev koji se šalje 100 puta na web poslužitelj http://www.google.com/. Test se zaustavlja nakon što je korisnički zahtjev poslan 100 puta.

Rješavanje problema:

  1. Ako se suočite s problemom tijekom izvođenja gornjeg scenarija ... učinite sljedeće
  2. Provjerite povezujete li se s internetom putem proxyja. Ako je odgovor da, uklonite proxy.
  3. Otvorite novu instancu Jmetra
  4. Otvorite ControllerTestPlan.jmx u Jmetru
  5. Kliknite Grupu niti -> Prikaži rezultat u tablici
  6. Pokrenite test