A terheléses tesztek feladatfeltételeinek meghatározása az Azure Load Testing használatával
Ebből a cikkből megtudhatja, hogyan definiálhat feladatfeltételeket vagy automatikus leállítási feltételeket a terheléstesztekhez az Azure Load Testing használatával. A feladatfeltételek lehetővé teszik a terhelés alatt lévő alkalmazás teljesítmény- és minőségi elvárásainak meghatározását. Az Azure Load Testing számos ügyfél- és kiszolgálómetrikát támogat a feladatfeltételek meghatározásához, például a hibaarányt vagy az Azure-erőforrások cpu-százalékos arányát. Az automatikus leállítási feltételek lehetővé teszik a terhelésteszt automatikus leállítását, ha a hibaarány túllép egy adott küszöbértéket.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
- Azure-beli terheléstesztelési erőforrás. Ha azure-beli terheléstesztelési erőforrást kell létrehoznia, tekintse meg a terheléstesztek létrehozásának és futtatásának rövid útmutatóit.
A terhelési teszt sikertelenségének feltételei
A terhelésteszt sikertelenségére vonatkozó feltételek a metrikák feltételei, amelyeknek a tesztnek meg kell felelnie. A tesztelési feltételeket az Azure Load Testing terheléstesztelési szintjén határozhatja meg. A terheléses tesztekhez egy vagy több tesztelési feltétel is tartozhat. Ha a tesztfeltételek közül legalább az egyik igaz értéket ad vissza, a terhelési teszt megkapja a sikertelen állapotot .
Egy terheléses teszthez legfeljebb 50 tesztfeltételt határozhat meg. Ha ugyanahhoz a metrikahoz több feltétel is tartozik, a rendszer a legalacsonyabb küszöbértékű feltételt használja.
Az ügyfélmetrikák feladatkritérium-struktúrája
Az Azure Load Testing feladatfeltételeinek formátuma egy támogatott metrika feltételes utasításának formátumát követi. Győződjön meg például arról, hogy a másodpercenkénti kérelmek átlagos száma meghaladja az 500-t.
Ügyféloldali metrikák esetében két szinten határozhat meg tesztelési feltételeket. A terheléstesztek különböző szinteken kombinálhatják a feltételeket.
- A terhelésteszt szintjén. Például annak biztosítása érdekében, hogy a hiba teljes százaléka ne lépje túl a küszöbértéket. A feltételek struktúrája a következő:
Aggregate_function (client_metric) condition threshold
. - A JMeter kérelem szintjén (JMeter-mintavevő). Megadhatja például a getProducts kérés válaszidejének küszöbértékét, de figyelmen kívül hagyhatja a bejelentkezési kérelem válaszidejének időtartamát. A feltételek struktúrája a következő:
Request: Aggregate_function (client_metric) condition threshold
.
Az alábbi táblázat a különböző összetevőket ismerteti:
Paraméter | Leírás |
---|---|
Client metric |
Szükséges. Az ügyfélmetrika, amelyre a feltételt alkalmazni kell. |
Aggregate function |
Szükséges. Az ügyfélmetrikára alkalmazandó összesítő függvény. |
Condition |
Szükséges. Az összehasonlító operátor, például greater than az , vagy less than . |
Threshold |
Szükséges. Az ügyfélmetrikával összehasonlítandó numerikus érték. |
Request |
Opcionális. Annak a JMeter-szkriptnek a mintavevője, amelyre a feltétel vonatkozik. Ha nem ad meg kérésnevet, a feltétel a szkriptben lévő összes kérelem összesítésére vonatkozik. A JMeter-szkriptben ne adjon meg semmilyen személyes adatot a mintavevő nevére. A mintavevők nevei megjelennek az Azure Load Testing eredmények irányítópultján. |
Támogatott ügyfélmetrikák a sikertelen feltételekhez
Az Azure Load Testing a következő ügyfélmetrikákat támogatja:
Metrika | Összesítő függvény | Küszöbérték | Feltétel | Leírás |
---|---|---|---|---|
response_time_ms |
avg (átlag)min (minimum)max (maximális)pxx (percentilis), xx lehet 50, 75, 90, 95, 96, 97, 98, 99, 999 és 9999 |
Egész szám, amely az ezredmásodpercek számát (ms) jelöli. |
> (nagyobb, mint)< (kisebb, mint) |
Válaszidő vagy eltelt idő ezredmásodpercben. További információ az Eltelt időről az Apache JMeter dokumentációjában. |
latency |
avg (átlag)min (minimum)max (maximális)pxx (percentilis), xx lehet 50, 90, 95, 99 |
Egész szám, amely az ezredmásodpercek számát (ms) jelöli. |
> (nagyobb, mint)< (kisebb, mint) |
Késés ezredmásodpercben. További információ a késésről az Apache JMeter dokumentációjában. |
error |
percentage |
Numerikus érték a 0–100 tartományban, százalékértékeket jelölve. |
> (nagyobb, mint) |
A sikertelen kérelmek százalékos aránya. |
requests_per_sec |
avg (átlag) |
Legfeljebb két tizedesjegyet tartalmazó numerikus érték. |
> (nagyobb, mint) < (kisebb, mint) |
Kérelmek száma másodpercenként. |
requests |
count |
Egész számérték. |
> (nagyobb, mint) < (kisebb, mint) |
Kérelmek teljes száma. |
Terhelésteszt feladatfeltételeinek meghatározása ügyfélmetrikákhoz
Ebben a szakaszban az Azure Portalon konfigurálja az ügyfélmetrikára vonatkozó tesztelési feltételeket egy terheléses teszthez.
Az Azure Portalon nyissa meg az Azure Load Testing-erőforrást.
A bal oldali panelen válassza a Tesztek lehetőséget a terheléses tesztek listájának megtekintéséhez.
Válassza ki a terhelési tesztet a listából, majd válassza a Szerkesztés lehetőséget.
A Tesztfeltételek panelen töltse ki a teszt Metrika, Összesítő függvény, Feltétel és Küszöbérték értékeit.
Ha szeretné, adja meg a Kérelem névadatait egy adott JMeter-kérelem tesztfeltételének hozzáadásához. Az értéknek meg kell egyeznie a JMX-fájlban található JMeter-mintavevő nevével.
Kattintson az Alkalmaz gombra a módosítások mentéséhez.
Amikor most futtatja a terhelési tesztet, az Azure Load Testing a tesztelési feltételek alapján határozza meg a terhelésteszt futtatásának állapotát.
Futtassa a tesztet, és tekintse meg az állapotot a terhelésteszt-irányítópulton.
Az irányítópult az egyes tesztelési feltételeket és azok állapotát jeleníti meg. A teljes tesztállapot meghiúsul, ha legalább egy feltétel teljesült.
Az alkalmazás összetevőjének elérése a kiszolgálómetrikák tesztelési feltételeihez
Ha hibafeltételeket állít be egy metrika alkalmazás-összetevőjében, a terheléstesztelési erőforrás egy felügyelt identitást használ az összetevő eléréséhez. A felügyelt identitás konfigurálása után meg kell adnia a terheléstesztelési erőforrás felügyelt identitásának engedélyeit, hogy ezeket az értékeket beolvassa az alkalmazás összetevőjéből.
Ahhoz, hogy az Azure terheléstesztelési erőforrás-engedélyei beolvassák a metrikákat az alkalmazásösszetevőből:
Az Azure Portalon nyissa meg az alkalmazás összetevőjét.
A bal oldali panelen válassza a Hozzáférés-vezérlés (IAM), majd a + Hozzáadás, majd a Szerepkör-hozzárendelés hozzáadása lehetőséget.
A Szerepkör lap Feladatfüggvények szerepkörei csoportjában keresse meg a Figyelési olvasót vagy a Figyelési közreműködőt.
A Tagok lap Hozzáférés hozzárendelése területén válassza a Felügyelt identitás lehetőséget.
Kattintson a Tagok kijelölése elemre, keresse meg és válassza ki a terheléstesztelési erőforrás felügyelt identitását, majd válassza a Tovább gombot. Ha rendszer által hozzárendelt felügyelt identitást használ, a felügyelt identitás neve megegyezik az Azure-beli terheléstesztelési erőforrás nevével.
Válassza a Véleményezés + hozzárendelés lehetőséget az engedély identitásának hozzárendeléséhez.
A teszt futtatásakor a terheléstesztelési erőforráshoz társított felügyelt identitás mostantól beolvassa a terhelésteszt metrikáit az alkalmazás összetevőjéből.
A kiszolgálómetrikák terheléstesztelési feladatfeltételeinek meghatározása
Fontos
Az Azure Load Testing nem támogatja a hibafeltételek konfigurálását kiszolgálóoldali metrikákon az Azure Pipelines/GitHub Actionsből.
Ebben a szakaszban a kiszolgálóoldali metrikákon konfigurálja a teszthibákra vonatkozó feltételeket egy terheléses teszthez az Azure Portalon.
Az Azure Portalon nyissa meg az Azure Load Testing-erőforrást.
Válassza a Teszt létrehozása lehetőséget.
A Figyelés lap alatt konfigurálja a teszt során figyelni kívánt alkalmazásösszetevőket.
Konfigurálja a Metrikák referencia-identitását. Az identitás lehet a terheléstesztelési erőforrás rendszer által hozzárendelt identitása, vagy a felhasználó által hozzárendelt identitások egyike. Győződjön meg arról, hogy ugyanazt az identitást használja, amelyet korábban megadott.
A Tesztfeltételek panelen töltse ki az erőforrás-azonosítót, a névteret, a metrikát, az összesítést, a feltételt, a küszöbértéket a teszthez. A hibafeltételeket csak azokra az erőforrásokra/alkalmazásösszetevőkre állíthatja be, amelyeket a teszt során figyel.
Kattintson az Alkalmaz gombra a módosítások mentéséhez. Amikor most futtatja a terhelési tesztet, az Azure Load Testing a tesztelési feltételek alapján határozza meg a terhelésteszt futtatásának állapotát.
Futtassa a tesztet, és tekintse meg az állapotot a terhelésteszt-irányítópulton. Az irányítópult az egyes tesztelési feltételeket és azok állapotát jeleníti meg. A teljes tesztállapot meghiúsul, ha legalább egy feltétel teljesült.
Automatikus leállítás konfigurálása
Az Azure Load Testing automatikusan leállítja a terheléses tesztet, ha a hiba százalékos értéke meghaladja egy adott időkeret küszöbértékét. A sikertelen tesztek automatikus leállítása további költségeket von maga után, például egy helytelenül konfigurált végpont URL-címe miatt.
A terhelésteszt konfigurációjában engedélyezheti vagy letilthatja az automatikus leállítás funkciót, és konfigurálhatja a hiba százalékos küszöbértékét és az időkeretet. Az Azure Load Testing alapértelmezés szerint automatikusan leállítja a terheléses teszteket, amelyek hibaszázada legalább 90%-os a 60 másodperces időszakokban.
Az Azure Load Testing automatikus leállítási funkcióját egy AutoStop-figyelővel kombinálva használhatja a JMeter-szkriptben. A terhelésteszt automatikusan leáll, ha az automatikus leállítási konfigurációban vagy a JMeter AutoStop figyelőben szereplő egyik feltétel teljesül.
Figyelemfelhívás
Ha letiltja az automatikus leállítást a terhelésteszthez, akkor is költségek merülhetnek fel, ha a terhelésteszt helytelenül van konfigurálva.
A terhelésteszt automatikus leállításának konfigurálása az Azure Portalon:
Az Azure Portalon nyissa meg az Azure Load Testing-erőforrást.
A bal oldali panelen válassza a Tesztek lehetőséget a terheléses tesztek listájának megtekintéséhez.
Válassza ki a terhelési tesztet a listából, majd válassza a Szerkesztés lehetőséget. Másik lehetőségként válassza a JMeter-szkript feltöltése lehetőséget>egy új teszt létrehozásához.
Az automatikus leállítási funkció konfigurálásához lépjen a Feltételek tesztelése lapra.
Engedélyezze vagy tiltsa le a terhelésteszt automatikus leállítását az automatikus leállítási tesztvezérlővel .
Ha engedélyezi az automatikus leállítást, kitöltheti a Hiba százaléka és az Idő ablak mezőit. Adja meg az időablakot másodpercben.
Ha új terhelési tesztet hoz létre, válassza az Alkalmaz vagy a Felülvizsgálat + létrehozás lehetőséget a módosítások mentéséhez.
Következő lépések
Ha tudni szeretné, hogyan paraméterezhet egy terhelési tesztet titkos kulcsok használatával, tekintse meg a terheléses teszt paraméterezését ismertető témakört.
A teljesítménytesztek automatizálásáról további információt az automatizált teljesítménytesztelés konfigurálása című témakörben talál.