Stabilitásteszt a szoftvertesztelésben
⚡ Okos összefoglaló
A stabilitástesztelés azt vizsgálja, hogy egy alkalmazás megbízhatóan működik-e a változó körülmények között, és nem csak egyetlen fix terhelés alatt. Feltárja az összeomlásokat, az erőforrás-kimerülést és a degradációt, amelyet egy rövid funkcionális futtatás soha nem ér el.

Mi a stabilitásvizsgálat?
Stabilitási teszt egy olyan nem funkcionális szoftverteszt, amelyet egy szoftveralkalmazás hatékonyságának és képességének mérésére végeznek, hogy hosszú ideig folyamatosan működjenek. A stabilitásteszt célja annak ellenőrzése, hogy a szoftveralkalmazás a normál használat során bármikor összeomlik-e vagy meghibásodik-e a teljes felhasználási tartomány gyakorlásával.
A stabilitástesztelés célja a kifejlesztett termék normál működési kapacitáson túli hatékonyságának ellenőrzése, gyakran töréspontig. Nagyobb jelentősége van a hibakezelésnek, a szoftver megbízhatóságának, a nagy terhelés alatti termék robusztusságának és méretezhetőségének, mint a rendszer normál körülmények közötti viselkedésének ellenőrzése.
A stabilitási tesztelés értékeli a stabilitási problémákat. Ez a tesztelés elsősorban a szoftverkomponens maximális igénybevételére szolgál. Ez egy nem funkcionális technika.

A stabilitásvizsgálatot terhelési ill állóképességi tesztelés.
Kockázatok, ha a tesztelés alatt álló rendszer nem esett át stabilitási teszten
Egy olyan tesztelés alatt álló alkalmazásnál, ahol nagyszámú felhasználót vezetnek be, és amelyeknek hónapokig kell futniuk újraindítás nélkül, számos probléma fordulhat elő:
Az esetleges hibával szembesülni lehet,
- a rendszer lelassul
- a rendszer működési problémákba ütközik
- a rendszer vezetékes viselkedést mutat
- a rendszer teljesen összeomlik
A szoftverfejlesztésben, Stabilitási teszt jellemzően magában foglalja a rendszer gyakorlását nagy felhasználókkal (virtuális), és a teljesítményparaméterek mérését annak ellenőrzésére, hogy a rendszer képes-e támogatni a várható terhelést.
Miért végezzen stabilitástesztet?
Ez a fajta tesztelés segít a felhasználóknak megérteni, hogyan fog működni a rendszer a valós élethelyzetekben.
Ezért a stabilitásteszt segítségével ellenőrizheti,
- Bízzon a tesztelt rendszer stabilitásában.
- Győződjön meg arról, hogy rendszere képes kezelni a nagy programokat.
- Figyelje rendszere hatékonyságát.
- Tesztelje a rendszer stabilitását feszültség alatt.
Fontos szerepet játszik a termékfejlesztésben, mivel a tesztelés alatt álló szoftvertermék korlátainak meghatározására szolgál a megjelenés előtt, vagy a további fejlesztésre szoruló területek meghatározására a termék életbe lépése vagy a gyártás során.
A stabilitástesztelési technikák nagyon gyakori példája az
OnLINE Skomlóping Portals: A stabilitásteszt ellenőrzi, hogyan fog viselkedni a webhely, amikor –
- Magas Csúcsidőben bevitt adatmennyiség
- Találatok száma egy adott időpontban
- oldalbetöltési probléma ugyanakkor
- A rendszer viselkedése
- A rendszer érzékenysége és még sok más szóba kerül Stabilitási teszt
Egy másik példa
A CPU alatti stabilitásteszt népszerű formája a teszt Teljesítményfelmérés technika. Ez a teszt ellenőrzi a processzor stabilitását, és figyeli a teljesítményét is, ahogy a processzor terhelése növekszik.
Stabilitási teszt végrehajtása
- A tesztelés hatókörének és céljának meghatározásához gondoskodnunk kell arról, hogy az alkalmazáskiszolgáló(k) ne omoljanak össze a terhelési teszt végrehajtása során.
- Az üzleti problémák meghatározásához ellenőrizze a rendszer teljesítményét és betöltését a végfelhasználói szempontok szerint.
- A különböző felelősségi körök és szerepkörök hozzárendeléséhez, mint például a tesztterv létrehozása, Teszt eset tervezés, teszteset áttekintés, teszt végrehajtás stb.
- Annak biztosítása érdekében, hogy a teszt leszállítandó a megadott időn belül
- A megfelelő Terhelésvizsgálat eszközök és tapasztalati csapat van jelen ehhez.
- A teszteléssel járó kockázat és költség mérése. Ez határozza meg az egyes végrehajtások költségét a CPU kihasználtság és a memória tekintetében.
- Meghatározza a Disszidál trackirály és jelentések, valamint a hozzájuk tartozó térképping a követelményekkel.
Teszteset a CPU-teljesítmény stabilitásának teszteléséhez
- A rendszer felső határának ellenőrzésére.
- A rendszer összeomlása vagy helyreállítása.
- Kérelemenként végrehajtott tranzakciók teljes száma.
- Függetlenül attól, hogy a tranzakciós válasz állandó marad-e vagy növekszik-e az idő múlásával.
- Hogyan viselkedik a rendszer nagy terhelés mellett.
- Reakciója és viselkedése nagy terhelés mellett.
Tesztjelentések stabilitásvizsgálathoz
A tesztvégrehajtások során számos statisztikai adatot gyűjtenek és mérnek; ezeket a számokat elemzik a jelentés elkészítése és a lehetséges teljesítményproblémák azonosítása érdekében.
Példák a tesztelés során gyűjtött statisztikákra:
- Tranzakciós válaszidők: A teszt során a tranzakciók végrehajtásához szükséges átlagos idő. Ez a statisztika azt értékeli, hogy a szerver teljesítménye a rendszer számára meghatározott elfogadható minimális és maximális tranzakcióteljesítmény-periódusokon belül van-e. Ez az információ értékeli, hogy a webszerver mennyi időt vesz igénybe a kérés feldolgozása során, és elküldi az alkalmazásszervernek, amely a legtöbb esetben egy adatbázis-kiszolgálóhoz küldenek kérést.
- Találatok másodpercenként: A felhasználók által a szerveren elért találatok száma. Ezek a statisztikák előnyösek a felhasználók által generált terhelések számának meghatározásában, tekintettel a találatok számára.
- Teljesítmény: A webszerver átviteli sebessége a teszt során, amelyet bájtokban mérnek. Az áteresztőképesség azt az adatmennyiséget jelenti, amelyet a felhasználók egy adott időpontban kaptak a szervertől. Ez a statisztika segít értékelni a felhasználók által generált terhelés mértékét.
- Tranzakció másodpercenként: Ez a teszt során végrehajtott (sikeres és sikertelen) tranzakciók teljes száma. Ez a statisztika segít a rendszer tényleges tranzakcióterhelésének ellenőrzésében.
- CPU: A teszt során elköltött CPU százalékos kihasználtság.
- memória: Memóriahasználat a teszt során.
- Korong: a teszt során elköltött lemezterületek kihasználása.
A stabilitásvizsgálat alapjai
Stabilitási teszt a Teljesítményteszt alá tartozik – egy olyan technika, amelyet a szoftver bizonyos minőségi jellemzőinek, például a stabilitás, a megbízhatóság és a rendelkezésre állás ellenőrzésére hajtanak végre.
Ez a tesztelés annak meghatározására szolgál, hogy egy rendszer vagy alrendszer milyen gyorsan teljesít egy adott munkaterhelés mellett.
A teljesítménytesztnek számos típusa van, és ezek egyike a stabilitásteszt.
- Stressz tesztelés: Ez egy tesztelési típus, amely a rendszer kapacitásán túl ellenőrzi a rendszer robusztusságát.
- Tüskék tesztelése: A rendszer viselkedésének ellenőrzésére szolgál a rendszer terhelésének azonnali növelésével. A cél annak ellenőrzése, hogy a rendszer mikortól lesz teljesítményprobléma, vagy múlik el.
- Méretezhetőség tesztelése: A rendszer képességeinek ellenőrzésére szolgál. Mennyire fog hatékonyan viselkedni a rendszer a növekvő igények, a méret és a mennyiség változása esetén.
- Térfogatvizsgálat: Ez egy nem funkcionális tesztelési technika, ahol a tesztelt szoftvereket hatalmas mennyiségű adatnak vetik alá, és ennek megfelelően ellenőrzik és igazolják a rendszer viselkedését.
- Terhelési vagy stabilitási vizsgálat: (Fentebb már szó volt róla)
Stabilitásvizsgáló eszközök
A teljesítményteszt néhány eszköze a következő:
- WebLOAD
- LoadRunner
- Apache JMeter
- NeoTerhelés
- CloudTest
- Loadstorm
- LoadUI
- WAPT
- LoadImpact
- Rakodó
- Httperf
- OpenSTA
Hogyan illeszkedik ez a teszt a teljesítménytesztelési családba
A teljesítménytesztelés egy gyűjtőfogalom. Az alábbi változatok csak az alkalmazott terhelés alakjában és annak időtartamában különböznek, ezért gyakran összekeverik őket egymással.
| Teszt típusa | Betöltési minta | Kérdés, amit megválaszol |
|---|---|---|
| Terhelési tesztelés | Várható csúcsterhelés, rövid időtartam | Eléri-e a rendszer a céljait normál csúcsforgalom mellett? |
| Stressz tesztelés | Kapacitáson túl növelve, egészen meghibásodásig | Hol törik el, és kecsesen meghibásodik? |
| Tüskék tesztelése | Hirtelen extrém hullám, majd megvonás | Túléli és felépül egy közlekedési sokk után? |
| Tartóssági vizsgálat | Normál terhelés sok órán át | Idővel romlik a teljesítmény? |
| Áztatási tesztelés | Tartós terhelés hosszabb időn keresztül | Vannak memóriaszivárgások vagy erőforrás-kimerülések? |
| Stabilitási vizsgálat | Változó terhelés a körülményektől függően | Megbízható marad-e a rendszer a változó körülmények ellenére is? |
| Térfogatvizsgálat | Átlagos felhasználók, nagyon nagy adatmennyiség | Vajon bírja az adatbázis növekedését? |
A tartóssági és az átitatási vizsgálatot gyakran szinonimaként kezelik. Gyakori használatuk szerint mindkettő hosszú ideig tartós terhelést tart. Ahol a csapatok különbséget tesznek közöttük, a tartóssági tesztelés arra összpontosít, hogy a válaszidők felfelé csúsznak-e, míg a tartóssági tesztelés az erőforrás-fogyasztásra, például a memóriára, a fájlkezelőkre és a kapcsolatkészletekre összpontosít. Az egyik futtatása általában mindkettőre bizonyítékot szolgáltat.
A teszt során rögzítendő legfontosabb mutatók
Egy teljesítményfutás csak annyira jó, mint amit futás közben rögzítesz. Rögzítsd ezt a hat adatot a szerver és a kliens oldalon, majd hasonlítsd össze őket az alapvonallal, ne pedig a megérzéseiddel.
| Metric | Mit mond neked | Figyelmeztető jel |
|---|---|---|
| Átlagos válaszidő | Tipikus felhasználói élmény | Bármilyen felfelé sodródás a pályán |
| 95. percentilis válaszidő | A leglassabb felhasználók tapasztalatai | Messze az átlag felett, ami következetlenséget jelent |
| áteresztőképesség | Másodpercenként kezelt kérések | Esés, miközben a terhelés állandó marad |
| Hibaarány | Sikertelen vagy időtúllépéses kérelmek aránya | Bármilyen emelkedés a megállapodott küszöbérték felett |
| CPU- és memóriahasználat | Szerver erőforrás-tartalék | Emlék, mely felkúszik és soha nem tér vissza |
| Adatbázis-kapcsolatok és szálak | Medence kimerülése | Olyan számok, amelyek folyamatosan növekednek kiadás nélkül |
Olvasd le az átlagot és a percentilist együtt. Egy 800 ms-os átlag 900 ms 95. percentilissel egy konzisztens rendszert ír le. Ugyanez az átlag 9 másodperces 95. percentilissel azt jelenti, hogy minden huszadik felhasználó rosszul érzi magát, és az átlag ezt elrejti.
A formára is figyelj, ne csak az értékre. Bármely hosszú ideig futó tesztben a lapos erőforrás-vonal sikeres, az emelkedő pedig szivárgást jelent, még akkor is, ha az abszolút szám a teszt végén még kényelmesen a határértéken belül van.
