JMeter Alapok - Passed Blog
skip to Main Content
+36 1 789 2525+36 70 387 3566

További cikkek

JMeter Alapok

1. rész: Alapfogalmak

Cikksorozatunkban szeretnénk betekintést adni a terheléses tesztelés rejtelmeibe a gyakorlat oldaláról. Erre a célra eszközként a legismertebb, nyílt forráskódú, ingyenes Jmeter-t szemeltük ki. Ebben a cikkben a Jmeter, alapfogalmait tisztázzuk.

Alapfogalmak
A terheléses tesztek a nem funkcionális tesztek csoportjába tartoznak. Egyrészt üzleti igényeket ellenőrizhetünk a segítségükkel. Pl.:

  • N különböző felhasználó folyamatos kiszolgálása,
  • N különböző felhasználó egyidejű kiszolgálása,
  • a felhasználóknak egy-egy interakció T időn belül történjen meg.


Másrészt mérésekkel felderíthetünk szűk keresztmetszeteket és limitációkat:

  • kevés memória,
  • kevés CPU mag,
  • hibásan tervezett/megírt tárolt eljárások,
  • a rendszer maximális kapacitása.

A méréshez szükség van egy kliens oldali terheléses eszközre és a szerver oldalon monitorozásra. A kliens oldali eszköz esetünkben a Jmeter, a szerver oldali montírozó eszközre a legegyszerűbb példa a linuxos sar. A monitorozás egy külön cikksorozatot érdemel 😊

Jmeter telepítés
A programot a https://jmeter.apache.org/download_jmeter.cgi oldalról tudjuk letölteni zip fájlként. Telepítéshez csak ki kell csomagolni. A bin könyvárban a jmeter.sh vagy jmeter.bat indításával tudjuk előcsalogatni a felületet. (Természetesen az utóbbi operációs rendszer függő)

Alap Komponensek
A Test Plan-re kattintva jobbgombbal az Add menüpontban érjük el a különböző eszközöket, amin belül vannak kategóriák.
Threads (Users)
Több fajta thread group közül választhatunk. A thread groupok egyfajta teszt esetek lesznek, ez alá fognak a lépések kerülni, illetve itt tudjuk állítani a virtuális felhasználók számát.
Config Element
Az itteni eszközökkel a hívásainkat tudjuk konfigurálni. Például lehetőségünk van CSV Data Set Config fájl segítségével data-driven teszt végrehajtására egy csv állományból olvasva az adatokat, vagy beállíthatunk alapértelmezett headert. A User Defined Variables segítségével változókat tudunk létrehozni.
Listener
A listenerek az eredmények megjelenítésére és kiírására szolgálnak. Lehetőségünk van több formában megjeleníteni az eredményeket, illetve ki tudjuk őket menteni fájlba.
Test Fragment
Nagyobb teszteket kisebb részekre tudunk bontani vele az átláthatóság és könnyebb paraméterezhetőség érdekében.
Non-Test Elements
Ezen belül a legfontosabb a HTTP(S) Test Script Recorder, ezzel tudunk hívásokat rögzíteni a böngészőnkből.

Thread Group Komponensek
A Thread Group-ra kattintva jobbgombbal az Add menüpontban érjük el a különböző eszközöket, amin belül vannak kategóriák.

Sampler
Itt találhatók a request-ek. Több fajta request használatára is van lehetőség.
Logic Controller
Ezeknek a kontrollereknek a segítségével a hívásoknak a menetét tudjuk kontrolálni különféle feltételekhez kötve. Például if feltételeket vagy akár loop-okat tudunk létrehozni.
Pre Processor
A Pre Processor-okkal tudunk a hívás előtt műveleteket végrehajtani. Illetve itt van lehetőségünk programkóddal bővíteni a tesztünket.
Post Processor
Bővíteni tudjuk a tesztünket saját kóddal, illetve a hívások után tudjuk használni ezeket az eszközöket. Például. ha a http request-re érkezett egy válasz, ezekkel az eszközökkel tudunk a válaszból adatot kinyerni. Fontos, hogy ezeket az eszközöket a hívás alatt kell elhelyezni a fa struktúrában.
Assertions
Ezekkel az eszközökkel össze tudjuk hasonlítani az eredményt az elvárt eredményekkel, különböző szempontok alapján.
Timer
Különböző késleltetések, hogy szabályozni tudjuk a hívsok vagy egyéb folyamatok közti eltelt időt.

Előzetes a folytatásból
Túl vagyunk a szárazabb részen, jöhet a szórakozás. 😊 A következő részben elkészítjük első tesztünket. A későbbi részekben lesz még szó:

  • felvétel alapú teszt készítése,
  • terhelés beállításai
  • paraméterezés,
  • adatvezérelt teszt,
  • eredmények értelmezése,
  • kezdők hibái…

Tesztre fel! Hajrá!

Back To Top