Bevezetés a stressz tesztelésbe
A stressz tesztelés egy olyan nem funkcionális tesztelési technika, amely segít meghatározni a vizsgált alkalmazás sebességét. Ez egy olyan típusú szoftvertesztelési technika, amelyet a teljesítményvizsgálat részeként végeznek annak érdekében, hogy ellenőrizni lehessen a rendszer stabilitását, megbízhatóságát és teljesítményét, ha nagy stressz és terhelésnek vannak kitéve. Ez a teszt alapvetõen megvizsgálja a rendszer robusztusságát és hibakezelését rendkívül nehéz terhelés esetén. Emellett az általános működési ponton túl is tesztel, hogy értékelje a rendszer működését szélsőséges túlterhelési körülmények között, annak érdekében, hogy a rendszer képes legyen viselni a stresszt. Kritikus fontosságú, hogy a rendszer helyreálljon stressztesztelés után, mivel az ilyen típusú stressz nagy valószínűséggel fordul elő a termelési környezetben.
A stresszteszt elvégzésének okai
Legtöbben gondolkodni fogunk a stresszteszt elvégzésének okain. Tehát mielőtt továbbmozdítanánk, először beszéljünk néhány fontos okról, amelyek miatt a tesztelt alkalmazást stressztesztelésnek vetik alá.
- A legelső ok az, hogy rendszerhiba esetén teszteljük az adatok helyreállítási lehetőségeit. A stresszteszt során a tesztelő ellenőrzi, hogy a rendszer tárolja-e az adatokat, vagy sem, hogy később visszaszerezze, mielőtt összeomlik.
- A tesztelés másik jelentősége annak a biztonsági kérdésnek a meghatározása (ha van ilyen), amely felmerülhet váratlan rendszerhibák esetén.
- Ez azt is segíti annak ellenőrzésében, hogy a rendszer jelentősebb hibaüzeneteket nyomtat-e ki a hiba vagy az összeomlás ideje alatt. A cél az, hogy egy önmagától értetődő és általános jellegű hibát kapjon, ahelyett, hogy kinyomtatna bármilyen véletlenszerű kivételt, amelyet a háttérkép generál.
- A tesztelt alkalmazás alávetésének további hasznos oka az, hogy képes legyen figyelemmel kísérni a rendszer teljesítményét és viselkedését váratlan hibák vagy összeomlás idején.
A stresszteszt célja / jelentősége
A stresszteszt vagy a szoftver tesztelése a különféle cégek körében végzett jelentős értékelés, amely magában foglalja az erőteljes vállalkozás keretét. A kísérlet célja robusztus működésének megalapozása, a kezelés során elkövetett hiba a források megzavarásával rontja a vizsgált rendszert.
A stresszteszt elsődleges szándéka
- Biztosnak kell lennie, hogy a műtét mostantól elhalványul, nyilvánvalóvá téve a helyreállítást. Más szavakkal ezt a sajátosságot nevezik helyreállíthatóságnak. A szoftver tesztelése vagy a stressz tesztelése adaptálható az adatok rosszindulatának feltárására.
- A stressz tesztelés során gyakran azonosítják a versenyfeltételeket és a memóriaszivárgásokat. A memóriaszivárgás egyfajta erőforrás-szivárgás, amely akkor fordul elő, amikor egy szoftver úgy kezeli a memóriaelosztást, hogy a további szükségtelen memória nem szabadul fel. A memóriaszivárgás akkor következhet be, amikor egy objektum a memóriába kerül, de a futó kód nem érheti el
- A memóriaszivárgásokat nyomon követő progresszív kutatási eszköz általában figyeli a memória hozzárendelését és nem hozzárendelését.
- Ahogyan egy karizmatikusan kiosztott memóriablokk szabadon jut el anélkül, hogy megszabadulna, a készülék megrövidíti a szivárgás helyét. A legtöbb eszköz ezt az adatot naplóba veszi. Egyes esetekben az azonnal leállíthatja a kód végrehajtását, és elérheti a kód sorát, ahol a megvalósítás történt.
Példák a memóriaszivárgások stressz-tesztelésének végrehajtására
1. példa
A memóriaszivárgások stressztesztelését úgy végezzük, hogy ösztönözzük a műveletek széles körét, amelyek felveszik a memóriában lévő adatok létrehozását, tárolását és kiküszöbölését, és a rendszert a fiaskó állapotára tárolják, hogy vigyázzon arra, hogy a rendszer könnyen helyreáll-e.
2. példa
Feltéve, hogy egy e-üzleti alkalmazást, egy stressz-tesztelő eszközt vagy írást felhasználhat arra, hogy kivételes számú felhasználót felébresszen, nagyon sok dolgot adva a kosárba, felsorolva és kivonva tételeit a kosárból, és megpróbálva pénzt vásárolni . Ez az egyik olyan teszt, amely segít kideríteni, van-e memóriaszivárgás a kosár szegmensében vagy a fizetési módszernél.
A stressz tesztelés öt paradigma / paragona
Fontosnak tartjuk, hogy a teljesítmény-tesztelő csapat stresszteszt-e-kereskedelem alkalmazását indítja el, amely kemping alapvető fontosságúak.
- Általános tevékenységek - például az áruk felmérése, az áruk hozzáadása, a kosárból való eltávolítása és az áruk vásárlása - végrehajtásához ezeket a virtuális felhasználókat programozzák.
- Azon felhasználók száma, akik azonnal felhalmozódnak, és amíg el nem éri a weboldalt, már nem képes a további cserét szabályozni.
- A hozzáadott pontok, amelyek alkalmazhatók és leírhatók, a következők
- A weboldal működése és az, hogy miként működik ez az idő, és hogy könnyen helyreállítható-e.
- Az elemzés következményeit a szűk keresztmetszetek, a befejezést javító területek, a helyreállítás, a feladatátvételi eszköz stb. Megkülönböztetésére alkalmazzák.
A webhely látogatói teljes pillanatnyi lendületének növelése érdekében ezeknek a feltételeknek a kezelése nagyon fontos. Az ilyen előre nem látható növekedés kezelésének elmulasztása a jövedelem és a goodwill elvesztésének vezethet. A stresszteszt megfelelő megfogalmazása érdekében a rendszernek hibaüzenetet kell mutatnia maximális feszültségviszonyok mellett, és mivel a terhelés szokásosnak tűnik, azt feltételezik, hogy képes visszanyerni.
Különféle alkalmazott technikák
Számos módszer vagy módszer létezik az alkalmazás stressz elleni tesztelésére. Ezek nevezetesen - tranzakciós tesztelési technika, feltáró tesztelési technika, elosztott tesztelési technika, szisztematikus tesztelési technika, alkalmazási stressz-tesztelési technika és így tovább. Néhányat az alábbiakban részletesebben magyaráztunk.
1) Tranzakciós tesztelés
Pontosan amire a név utal, a stresszteszt tranzakciós típusa teszteli az alkalmazás által okozott stresszmennyiséget az egyik alkalmazás közötti másik tranzakciók idején.
2) Elosztott tesztelés
Ebben a tesztelési módszerben megvizsgálják a szerverhez társított összes ügyfelet. A szerver helyzete és elszámoltathatósága a stressztesztek egy csoportjának terjesztése minden ügyfél között, és helyzetük nyomon követése.
3) Felfedező tesztelés
A stresszteszt ezen módszerével a műveletet szokatlan körülmények között tesztelik, amelyeknél a valósidejű esemény bekövetkezésének esélye nagyon valószínűtlen. Az ilyen ritka forgatókönyvek tesztelésére csak néhány ilyen típusú stresszteszt tartozik
- Nevezetesen, hogy az egyidejű felhasználók hatalmas száma megpróbálja bejelentkezni a tesztelt alkalmazásba.
- Az adatgyűjtés során nagyon jelentős mennyiségű adatot adunk hozzá.
4) Alkalmazási tesztelés
Az ilyen típusú stressz-tesztelési alkalmazásokat általában arra az irányra alkalmazzák, hogy felfedjék a teljesítmény szűk keresztmetszeteivel, a hálózati problémákkal, az adatok blokkolásával és a zárolással kapcsolatos hiányosságokat.
5) Szisztematikus tesztelés
A szisztematikus tesztelés célja a kiszolgálón működő számos művelet kipróbálása. Ez lehetővé teszi a tesztelő csoport számára, hogy azonosítsa az egyik szoftver adatait az alternatív szoftverek felé.
Számos eszköz áll rendelkezésre a stressz teszteléséhez
Általában az összes teljesítményteszt eszköz, amelyet a terhelés tesztelésére alkalmaznak, szintén alkalmazható erre a tesztelésre. Az alábbiakban tárgyaljuk azokat, amelyeket a leggyakrabban használnak
- Loadrunner: A HP Loadrunner a széles körben elfogadott eszköz a stressz tesztelés végrehajtásához, és a Loadrunner által beszerzett utóhatások mérlegelésre kerülnek.
- Jmeter: Ingyenesen elérhető nyílt forráskódú eszköz egy Java alkalmazás, amely képes bármilyen típusú teljesítményteszt elvégzésére.
- Neo Load: Ezt a módszert stressztesztek elvégzésére alkalmazzák az interneten és a mobil alkalmazásokon kívül. Számtalan dominanciája van, amelyek közül néhány támogatja a piacon elérhető összes főbb szervert, és felhasználható ennek a tesztelésnek az ERP, CRM és Business Intelligence rendezési alkalmazásokban stb. Történő kezelésére.
A stresszteszt megközelítése
A stressz-tesztelés irányításához szükséges eljárás többé-kevésbé hasonlít a teszteléshez használt lépésekhez, mivel ez egy típusú teljesítményteszt. Az alábbiakban hétféle módszert használunk bármilyen típusú teljesítményteszt kezelésére, legyen az volumenteszt, terhelésteszt vagy stresszteszt.
- A tesztelési környezet felismerése: A hálózati konfigurációk részleteinek, a szoftver és a hardver részleteinek és egyéb eszközöknek a felismerése, amelyekre szükség van egy alkalmazás stressztesztjéhez.
- A teljesítmény-jóváhagyási minták azonosítása: Szerelje szét a teszteléshez használt végrehajtási mutatókat a tesztelt alkalmazás végrehajtásának kivizsgálására. Ezenkívül a stresszteszt elvégzésének normáit is kimutatja.
- Készítse el a stresszteszt sémáját és kialakítását: Ez a folyamat magában foglalja a stresszteszt terv, a teljesítményteszt keretrendszerének stb. Elkészítését .
- A teszt hátterének megtervezése : Az egyes stratégiák végrehajtásához elengedhetetlen tesztkörnyezet, mechanizmus és erőforrások felszerelése, mivel a tulajdonságok és elemek hozzáférhetővé válnak a teszthez.
- Végezzen teszttervet: Növelje a stresszteszteket a teszttervezés legjobb módszereinek követésével.
- Tesztek végrehajtása: Adja be és ellenőrizze a teszteket. Hitelesítse a teszteket, a teszteredményeket és a következményeket az egységben.
- Az eredmény vizsgálata: A teszt után elért eredményadatok összehangolása és terjesztése. Miután megerősítést nyert, hogy a referenciaértékek nem sértették meg a küszöbértéket és a beállított korlátokat, összegyűjtésre kerülnek a szükséges adatok, amelyek jelzik egy adott szolgáltatás tesztelésének végét egy meghatározott környezetben.
Különbség a stressz és a terhelés tesztelése között
Terhelésvizsgálat | Stressz tesztelés |
A mûveletet úgy vizsgálják meg, hogy a legmagasabb potenciálra tölti fel, és válaszát megfogalmazza. | A rendszer meghaladja azon képességét, hogy a hibaig terjedjen, és teljesítménye dokumentálva van. |
Ellenőrzi a korlátozásokat és a mutatókat, például a reakcióidő a legmagasabb terhelésnél, tranzakciók másodpercenként, átviteli sebesség stb. | Más metrikák, mint például átviteli sebesség, tranzakciók másodpercenként stb. Ezen kívül felsorolnak más mutatókat is, például hibákat másodpercenként, sikertelen tranzakciók számát, hibás felhasználókat, szerver helyreállítási idejét. |
Megvizsgálják a terhelés célját, amely ellen az alkalmazás / rendszer képes ellenállni, az elérési szintet a határokon. | Ennek célja annak megtanulása, hogyan lehet az alkalmazás visszatéríteni, ha az alkalmazás meghiúsul. Azt is megvizsgálják, hogy az alkalmazás hogyan reagál az furcsa nehéz terhelésekre. |
Az alkalmazás stressz tesztelésének metrikája
A metrikák kritikus teljesítménymutatók. A legtöbb rendszeresen alkalmazott mutatóra az alábbiakban hivatkozunk
- Egy tranzakció átlagos válaszideje: Ez azt jelenti, hogy egy tranzakció időtartamát másodpercenként futtatják a forgatókönyv végrehajtása alatt.
- A másodpercenként bekövetkezett tranzakciók száma : A forgatókönyv végrehajtása közben átadott, sikertelen vagy befejezett tranzakciók száma.
- Az összes tranzakciót másodpercenként hajtják végre: Az összes tranzakció forgatókönyve végrehajtása közben átadott, sikertelen vagy lezárt tranzakciók száma.
- A másodpercenként előforduló hibák száma: A forgatókönyv végrehajtásakor tapasztalt hibák számának becsült átlaga.
- Találatok száma másodpercenként: A forgatókönyv végrehajtása során a felhasználók másodpercenként több kérést küldnek a webszervernek. A teljes szám megadja a találatok számát másodpercenként.
- A tranzakció reakcióideje nagy terhelés esetén: A forgatókönyv végrehajtása során a virtuális felhasználók száma közvetlenül kapcsolódik a tranzakció által igénybe vett időhöz.
Következtetés
A stresszteszt vagy a szoftver tesztelése a különféle cégek körében végzett jelentős értékelés, amely magában foglalja az erőteljes vállalkozás keretét. Ez a teszt elsősorban a rendszer robusztusságát és hibakezelését határozza meg rendkívül nehéz terhelés esetén. Emellett az általános működési ponton túl is tesztel, hogy értékelje a rendszer működését szélsőséges túlterhelési körülmények között, annak érdekében, hogy a rendszer képes legyen viselni a stresszt. Kritikus fontosságú, hogy a rendszer helyreálljon stressztesztelés után, mivel az ilyen típusú stressz nagy valószínűséggel fordul elő a termelési környezetben. A rendszert úgy tesztelték, hogy a megfelelő hibaüzenetet jelenítse meg maximális feszültség alatt.
Ajánlott cikkek
Ez egy útmutató a Mi a stressz tesztelés című útmutatóban. Itt tárgyaljuk az okot, a célokat, a memóriaszivárgás példáit, öt paragont, öt stresszteszthez használt típust. Megnézheti az adott cikkeket is, hogy többet megtudjon-
- Rendszer tesztelése
- Stabilitási vizsgálat
- Biztonsági tesztelés
- Útmutató a statikus teszteléshez
- 8 Fontos feladat a tesztterv sablonjának elkészítése
- Teljes útmutató az alkalmazásteszteléshez