Vezérlők be JMeterCiklus, Logika, Tranzakció

⚡ Okos összefoglaló

Logikai vezérlők JMeter meghatározza a felhasználói kérések szálon belüli sorrendjét, olyan vezérlőkkel, mint a Loop, Random, Simple, Module és Recording shaping hogyan küld egy teljesítménytesztelési terv kéréseket a szervernek.

  • 🎛️ Logikai vezérlők: A vezérlők határozzák meg a kérések szálon belüli futtatásának sorrendjét.
  • 🔁 Hurokvezérlő: Meghatározott számú alkalommal futtat egy mintavevőt a szálcikluson belül.
  • 🎲 Véletlenszerű vezérlő: Minden ciklusban véletlenszerű sorrendben futtatja a gyermek kéréseket.
  • 🧩 Modulvezérlő: Modularitást ad hozzá azáltal, hogy kiválasztja, melyik modul fut.
  • ⏺️ Felvételvezérlő: A rögzített tesztlépéseket helyőrzőként tárolja.
  • 🤖 AI segítség: A mesterséges intelligencia segíti a tervezést és az elemzést JMeter teljesítménytesztelési tervek.

Vezérlők be JMeter

Mi az a logikai vezérlő?

A logikai vezérlők segítségével meghatározhatja a szálban a kérések feldolgozásának sorrendjét. Lehetővé teszi a „mikor” szabályozását, hogy felhasználói kérést küldjön a webszervernek. Véletlenszerű vezérlők segítségével például véletlenszerűen küldhet HTTP kéréseket a szervernek

A logikai vezérlők határozzák meg A rendelés amelyben a felhasználói kérés végrehajtásra kerül.

Néhány gyakran használt logikai vezérlő az alábbiakban található:

A logikai vezérlő

Felvételvezérlő

JMeter tud rekord a te Tesztelés lépések; a felvételvezérlő a placeholder hogy tárolja ezeket a rögzítési lépéseket.

Felvételvezérlő

Egyszerű vezérlő

Az egyszerű vezérlő csak a konténer felhasználói kérésre.

Egyszerű vezérlő

Hurokvezérlő

A Loop Controller futtatja a felhasználói kérést meghatározott számú alkalommal vagy fuss örökké ábrán látható módon:

Hurokvezérlő

Véletlenszerű vezérlő

A Random Controller végrehajtja az összes felhasználói kérést a véletlen sorrendben minden ciklusidőszakban.

Például 3 felhasználói kérése van a webhelyhez http://www.google.com a következő sorrendben:

  1. HTTP kérés
  2. FTP kérés
  3. JDBC kérés

Ennek a 3 kérésnek 5 alkalommal kell lefutnia. Összesen 15 felhasználói kérés kerül elküldésre a következő címre: Google szerver által JMeter.

In egymás utáni megrendelés, kérések elküldésre kerülnek szekvenciálisan a következő sorrendben:

HTTP-kérés ->FTP-kérés->JDBC-kérés

minden egyes hurokhoz.

Véletlenszerű vezérlő

In véletlen megrendelés, a kérések elküldése: véletlenszerűen,

FTP-kérés ->HTTP-kérés->JDBC-kérés

Or

JDBC-kérés ->FTP-kérés->HTTP-kérés

Minden hurokhoz.

Modul vezérlő

A Module Controller célja modularitás hozzáadása JMeter.

Az általános elképzelés az, hogy a webalkalmazások kis funkcionális egységekből állnak (pl. Bejelentkezés, Fiók létrehozása, Kijelentkezés…). Ezek a funkciók „modulokként” tárolhatók a Simple Controllerben. A Module Controller választja ki, hogy melyik modulnak kell futnia.

Modul vezérlő

Fontolja meg a következő forgatókönyvet -

Szimulálni szeretnéd:

  • 50 felhasználók kijelentkezés,
  • 100 felhasználók bejelentkezés
  • 30 felhasználók keresés www.google.com

Használhatja JMeter 3 modul létrehozásához. Minden modul szimulál minden felhasználói tevékenységet: Bejelentkezés, kijelentkezés és keresés.

Modul vezérlő

A Modulvezérlő kiválasztja, hogy melyik modult kell futtatni.

Modul vezérlő

Egyéb fontos vezérlők

  • Interleave Vezérlő: felveszi és elkészíti egy felhasználói kérés fut be minden a szál hurokja.
  • Runtime Vezérlő: vezérlők meddig gyermekei futhatnak.

Ha például a Runtime Controller 10 másodpercet adta meg, JMeter 10 másodpercig futtatja a tesztet.

Egyéb fontos vezérlők

  • tranzakció Vezérlő: méri a teljes idő elvitték befejezni egy teszt végrehajtás
  • Tartalmaz Vezérlő: külső tesztterv használatára készült. Ez a vezérlő lehetővé teszi több tesztterv használatát JMeter. Lásd a részleteket a JMeter Teljesítményfelmérés.

Példa hurokvezérlőre

Ez a rész lépésről lépésre bemutatja a hozzáadáshoz szükséges utasításokat Hurokvezérlő állítsa be az aktuális teljesítményteszt-tervét.

A Loop Controller a mintavevőket meghatározott számú alkalommal futtatja, a szálcsoporthoz megadott hurokértéken felül. Például ha Ön

  • Adjon hozzá egy HTTP-kérést egy hurokvezérlőhöz 50-es hurokszámmal
  • Állítsa be a szálcsoport hurokszámát 2-re
  • Ezután JMeter összesen 50 * 2 = 100 HTTP kérést küld.

Ez a ütemterv ebből a példából:

Példa hurokvezérlőre

1. lépés) Szálcsoport konfigurálása

We újrafelhasználás az oktatóanyag 1., 2. lépése JMeter Teljesítményfelmérés.

  1. Szálcsoport hozzáadása

Jobb klikk a Teszt terv és adjunk hozzá egy új szálcsoportot: hozzáad-> Szálak (felhasználók) ->Szálcsoport

De a Szálcsoport vezérlőpulton adja meg a Szál tulajdonságait a következőképpen:

Szálcsoport hozzáadása

Meg fog tenni egy felhasználói kérést a google.com webszerverhez, és futtassa azt 2 alkalommal.

  1. hozzáad JMeter elemek

Adja hozzá az alapértelmezett HTTP-kérést a www.google.com webhelyhez.

  1. Hurokvezérlő hozzáadása

Kattintson a jobb gombbal a Thread Group -> Logic Controller -> Loop Controller

Hurokvezérlő hozzáadása

2. lépés) A hurokvezérlő konfigurálása

Adjon hozzá 50 értéket a Loop Count mezőhöz az alábbi ábra szerint. Ez lesz egy felhasználói kérés a webszerverhez google.com futtasd 50 alkalommal a =2 ciklusértéken kívül, amit a fenti szálcsoporthoz adott meg.Tehát JMeter összesen küld 2 * 50 = 100 HTTP kérések.

A hurokvezérlő konfigurálása

Kattintson a jobb gombbal a Loop Controller, Add -> Sampler -> HTTP request

A hurokvezérlő konfigurálása

3. lépés) Adja hozzá a nézet eredményeit a táblázathoz

Újra felhasználjuk a 2. lépést Időzítő az Eredmények megtekintése a táblázathoz hozzáadásához

Tehát a tesztterv az alábbi ábrán látható

Nézet eredmények hozzáadása a táblázathoz

4. lépés) Futtassa le a tesztet

Most térjen vissza az Eredmények megtekintése a táblázatban lehetőséghez, kattintson a Start gombra a menüsorban (Ctrl+R) a teszt futtatásához

Ahogy az alábbi ábrán látható, JMeter szimulálja egy felhasználói kérés, amely 100-szor kerül elküldésre a webszervernek http://www.google.com/. A teszt leáll, miután a felhasználói kérést 100 alkalommal elküldték.

Futtassa a tesztet

Hibaelhárítás

  1. Ha a fenti forgatókönyv futtatása közben szembesül a problémával… tegye a következőket
  2. Ellenőrizze, hogy proxyn keresztül csatlakozik-e az internethez. Ha igen, távolítsa el a proxyt.
  3. Nyissa meg a Jmeter új példányát
  4. Nyissa meg a ControllerTestPlan.jmx Jmeterben
  5. Kattintson a Szálcsoport -> Eredmény megtekintése a táblázatban elemre
  6. Futtassa a tesztet

GYIK

Egy mintavevő egy tényleges kérést küld a szervernek, például egy HTTP vagy JDBC kérést. Egy logikai vezérlő maga nem küld kéréseket; azt szabályozza, hogy a gyermek mintavevői milyen sorrendben és feltételek mellett fussanak egy szálon belül.

A tranzakcióvezérlő egyetlen tranzakcióként méri a mintavételezők egy csoportjának végrehajtásához szükséges teljes időt. Hasznos egy többlépéses üzleti folyamat, például a bejelentkezés, majd a keresés időzítéséhez, ahelyett, hogy minden egyes kérést külön mérnénk.

Szorozódnak. Ha egy ciklusvezérlő értéke 50, a szálcsoport ciklusszáma pedig 2, akkor a vezérlőn belüli minden mintavevő iterációnként 50-szer fut le, összesen 50-szer 2-vel, ami 100 kérést jelent.

Igen. A mesterséges intelligencia realisztikus munkaterhelési modelleket tud javasolni, tesztadatokat generálni és eredménygrafikonokat elemezni a szűk keresztmetszetek megjelölése érdekében. A gépi tanulás észleli a teljesítménybeli anomáliákat és előrejelzi a kapacitást, segít...ping mérnökök terveznek és értelmeznek JMeter gyorsabban tesztel.

A mesterséges intelligencia modellezi a várható terhelési mintákat, automatikusan hangolja a tesztparamétereket, és elemzi a metrikák elemzését a regressziók és a kiváltó okok észlelése érdekében. Ezek az intelligens funkciók prediktívebbé teszik a teljesítménytesztelést, nyers adatokká alakítva azokat. JMeter az eredményeket gyakorlatban hasznosítható kapacitásbeli információkká alakítja.

Foglald össze ezt a bejegyzést a következőképpen: