Kako koristiti JMeter za testiranje performansi i opterećenja
JMeter Testiranje opterećenja
JMeter Testiranje opterećenja je proces testiranja koji se provodi pomoću alata za testiranje opterećenja pod nazivom Apache JMeter koja se temelji na desktop aplikaciji otvorenog koda Java. JMeter za testiranje opterećenja ključan je alat koji određuje može li web aplikacija koja se testira zadovoljiti zahtjeve visokog opterećenja ili ne. Također pomaže u analizi ukupnog poslužitelja pod velikim opterećenjem.
JMeter Ispitivanje performansi
JMeter Ispitivanje performansi is Ispitivanje metoda izvedena korištenjem Apache JMeter za testiranje performansi web aplikacije. JMeter za testiranje performansi pomaže u testiranju statičkih i dinamičkih resursa, pomaže u otkrivanju istodobnih korisnika na web stranici i pruža razne grafičke analize za testiranje performansi. JMeter testiranje performansi uključuje test opterećenja i stres test web aplikacije.
Apache JMeter alat za testiranje nudi sljedeće prednosti in Ispitivanje performansi
- JMeter može se koristiti za testiranje performansi oba statički resursi kao što su JavaScript i HTML, kao i dinamičan resurse, kao što su JSP, Servleti i AJAX.
- JMeter može otkriti najveći broj istodobnih korisnika koje vaša web stranica može podnijeti
- JMeter pruža razne grafičke analize izvješća o izvedbi.
JMeter Testiranje izvedbe uključuje:
- Opterećenje Testiranje: Modeliranje očekivane upotrebe simulacijom pristupa više korisnika Web usluge istovremeno.
- Stres Testiranje: Svaki web poslužitelj ima maksimalno opterećenje. Kada opterećenje prijeđe ograničenje, web poslužitelj počinje sporo reagirati i proizvoditi pogreške. Svrha je Ispitivanje stresa je pronaći maksimalno opterećenje koje web poslužitelj može podnijeti.
Donja slika pokazuje kako JMeter Testiranje opterećenja simulira veliko opterećenje:
Napravite plan testiranja izvedbe u JMeter
U ovom vodiču radimo analizu performansi Google.com za 1000 korisnika koristeći različite alati za testiranje performansi kako bismo osigurali da web-mjesto može podnijeti opterećenje i pružiti besprijekorno korisničko iskustvo.
Prije testiranja izvedbe ciljne web aplikacije, trebali bismo utvrditi
- Normalno opterećenje: Prosječan broj korisnika koji posjećuju vašu web stranicu
- Teško opterećenje: Maksimalni broj korisnika koji posjećuju vašu web stranicu
- Koji je vaš meta u ovom testu?
Ovdje je Putokaz ovog praktičnog primjera
Korak 1) Dodajte grupu niti
- početni plan JMeter
- odabrati Plan testiranja na drvetu
- dodati Grupa niti
Desnom tipkom miša kliknite na "Plan testiranja" i dodajte novu grupu niti: dodati -> Niti (korisnici) -> Grupa niti
Na upravljačkoj ploči Grupe niti unesite Svojstva niti na sljedeći način:
- Broj navoja: 100 (Broj korisnika koji se povezuju na ciljnu web stranicu: 100)
- brojanje petlji: 10 (broj vremena za izvršenje testiranja)
- Ramp-Razdoblje: 100
Broj niti i broj petlji su različit.
Ramp-Up Period govori JMeter koliko dugo da odgoditi prije pokretanja sljedećeg korisnika. Na primjer, ako imamo 100 korisnika i 100-sek Ramp-Razdoblje gore, tada bi odgoda između početnih korisnika bila 1 sekunda (100 sekundi /100 korisnika)
Korak 2) Dodavanje JMeter elementi
Sada određujemo što JMeter elemenata u ovom testu. Elementi su
-
HTTP zahtjev Zadano
Ovaj se element može dodati desnim klikom na grupu niti i odabirom: dodati -> Element konfiguracije -> Zadane postavke HTTP zahtjeva.
Na upravljačkoj ploči zadanih postavki HTTP zahtjeva unesite naziv web stranice koja se testira (http://www.google.com)
-
HTTP zahtjev
Desnom tipkom miša kliknite Grupu niti i odaberite: dodati -> pribor za uzimanje uzorka -> HTTP zahtjev.
Na upravljačkoj ploči HTTP zahtjeva, polje Put pokazuje koji URL zahtjev želite poslati Google poslužitelju.
Na primjer, ako unesete "kalendar” u polju Put. JMeter će kreirati URL zahtjev http://www.google.com/calendar na Google poslužitelj
Ako zadržite polje Path prazan JMeter će kreirati URL zahtjev http://www.google.com na Google poslužitelj.
U ovom testu ostavljate polje Path prazno za izradu JMeter kreirajte URL zahtjev http://www.google.com na Google poslužitelj.
Korak 3) Dodavanje rezultata grafikona
JMeter može prikazati rezultat testa u formatu grafikona.
Desni klik Plan testiranja, dodati -> slušalac -> Grafikon Rezultati
Korak 4) Pokrenite Test i dobijte rezultat testa
tisak trčanje gumb (Ctrl + R) na alatnoj traci za početak procesa testiranja softvera. Vidjet ćete prikaz rezultata testa na Graphu u stvarnom vremenu.
Slika ispod prikazuje grafikon testnog plana, gdje smo simulirali 100 korisnika koji su pristupili web stranici www.google.com.
Na dnu slike nalaze se sljedeće statistike predstavljene bojama:
- Crna: Ukupan broj trenutačno poslanih uzoraka.
- plava: Trenutačni prosjek svih poslanih uzoraka.
- crvena: Trenutna standardna devijacija.
- zelena: Brzina protoka koja predstavlja broj zahtjeva u minuti kojima je poslužitelj obradio
Analizirajmo performanse Google poslužitelja na donjoj slici.
Za analizu performansi web poslužitelja koji se testira, trebali biste se usredotočiti na 2 parametra
- propusnost
- odstupanje
Korištenje električnih romobila ističe propusnost je najvažniji parametar. Predstavlja sposobnost poslužitelja da podnese velika opterećenja. The viši propusnost je, bolje je izvedba poslužitelja.
U ovom testu, propusnost Google poslužitelja je 1,491.193/minuti. To znači da Google poslužitelj može obraditi 1,491.193 zahtjeva u minuti. Ova vrijednost je prilično visoka pa možemo zaključiti da Google poslužitelj ima dobre performanse
Korištenje električnih romobila ističe odstupanje prikazan je crvenom bojom – označava odstupanje od prosjeka. The manji o bolje.
Usporedimo performanse Google poslužitelja s drugim web poslužiteljima. Ovo je rezultat testa performansi web stranice http://www.yahoo.com/ (Možete odabrati druge web stranice)
Propusnost web stranice koja se testira http://www.yahoo.com je 867.326/minutama. To znači da ovaj poslužitelj obrađuje 867.326 zahtjeva u minuti, manje od Googlea.
Odstupanje je 2689, puno više od Googlea (577). Stoga možemo utvrditi da je izvedba ove web stranice manja od performansi Google poslužitelja.
NAPOMENA: Gore navedene vrijednosti ovise o nekoliko čimbenika kao što su trenutno opterećenje poslužitelja na Googleu, brzina vašeg interneta, snaga procesora itd. Stoga je vrlo malo vjerojatno da ćete dobiti iste rezultate kao gore. Stoga bez panike! Ako vas zanima kako opterećenje poslužitelja utječe na performanse i kako to testirati, možda ćete pronaći ovo vodič za testiranje opterećenja koristan.
Rješavanje problema
Ako se suočite s problemom dok izvodite gornji scenarij... učinite sljedeće
- Provjerite povezujete li se na internet putem proxyja. Ako da, uklonite proxy.
- Otvorite novu instancu Jmetera
- Otvorite PerformanceTestPlan.jmx u Jmetru
- Double Kliknite Grupa niti -> Rezultat grafikona
- Pokrenite test