Korábbi cikkünkben ismertettük a funkcionális tesztelés fajtáit, most a nem funkcionális tesztmódszertanokról adunk áttekintést annak érdekében, hogy az IT szakemberek mellett más területek döntéshozói is tisztában legyenek azzal, milyen vizsgálati módszerekkel lehet egy szoftvert tesztelni.
A nem funkcionális tesztelés célja annak megállapítása, hogy a szoftver válaszideje elég gyors-e az üzleti követelmények kielégítésére. A szakirodalomban átfedések tapasztalhatók bizonyos teszttípusok között, mert működésük és alkalmazásuk hasonlóságot mutat. Ezek a teszttípusok ugyan céljaikat tekintve csupán néhány aspektusban különböznek egymástól, de eltérő értéket hoznak a rendszerrel kapcsolatban.
Az akadálymentességi teszt meghatározza, hogy a szoftver használható-e/hozzáférhető-e a fogyatékkal élők számára. Ez olyan felhasználóra vonatkozhat, aki: vak, siket, látássérült, tanulási nehézséggel küzd vagy idős.
A Megfelelőségi tesztelés egy olyan nem funkcionális tesztelési technika, amelyet annak validálása céljából végeznek, hogy a kifejlesztett rendszer megfelel-e a szervezet szabványainak vagy sem.
A kompatibilitási teszt egy másik környezetben ellenőrzi a szoftver viselkedését és működését: pl. különböző webkiszolgálókon, hardvereken és hálózatokon, különböző konfigurációkban. Többféle kompatibilitási teszt létezik, a szakirodalom elkülöníti az Interface,a Backward és a Platform kompatibilitás teszteket. A Backward, visszamenőleges kompatibilitási teszt ellenőrzi, hogy az újonnan kifejlesztett vagy frissített szoftver kompatibilis-e a régebbi verziójával. Ugyanis ha a szoftver bármely része frissül, akkor annak jól kell működnie a szoftver előző verzióján is.
A hatékonyság vizsgálat teszteli a program által az adott funkció végrehajtásához szükséges erőforrások mennyiségét.
Telepítés/Eltávolítás tesztet hajtanak végre annak ellenőrzésére, hogy a szoftver telepítése az összes szükséges összetevővel együtt végbemegy-e, és az alkalmazás a várakozásoknak megfelelően működik-e. Ez a tesztelés azért fontos, mert a telepítés az első interakció a végfelhasználókkal. A telepítés és az eltávolítás tesztelése teljes, részleges vagy frissítési telepítési/eltávolítási folyamatokon történik különböző operációs rendszereken, eltérő hardveres vagy szoftveres környezetben.
A terheléses tesztelés egy olyan nem funkcionális tesztelés, amely során a rendszert leterhelik, hogy megállapíthatóvá váljon, mennyi terhelést vagy maximális forgalmat képes kezelni a teljesítmény romlása nélkül. Ez a tesztelési forma a rendszer maximális kapacitásának megkeresésére és a felmerülő problémák felderítésére szolgál. A Load (vagy Terheléses) teszt a teljesítményteszt egy olyan típusa, amelynek célja annak értékelése, hogy egy alkalmazás vagy rendszer hogyan működik valós körülmények között.
Operatív tesztelés esetén a gyártási szakasz előtt történik meg a szoftver kiértékelése. Az operatív tesztelés biztosítja a rendszer és részegységeinek megfelelőségét az alkalmazás működése közben.
Teljesítményteszt segítségével ellenőrizzük, hogy a rendszer megfelel-e a teljesítménykövetelményeknek. Ezzel a metódussal megállapíthatóvá válik, hogy a rendszer hogyan teljesít az érzékenység és a stabilitás szempontjából egy adott munkaterhelés mellett. Performanicateszt elvégzéséhez a rendszert általában túlterhelik.
A hordozhatósági tesztelés egy termék vagy szoftver egyik környezetből a másikba történő áthelyezésének tesztelését jelenti.
A helyreállítási teszt meghatározza, hogy egy alkalmazás vagy rendszer mennyire képes helyreállni összeomlások, hardverhibák és más hasonló problémák után.
A Megbízhatóság tesztelése egy olyan szoftver tesztelési folyamat, amely ellenőrzi, hogy a szoftver képes-e egy bizonyos időn át hibamentes műveletet végrehajtani egy adott környezetben, vagyis a céloknak megfelelően, megbízhatóan működik-e.
A skálázhatóság tesztelése egy olyan nem funkcionális tesztmódszertan, amelyben az alkalmazás teljesítményét a felhasználói kérések vagy más teljesítménymérő attribútumok számának növelésére vagy csökkentésére való képessége alapján mérik. A scapability tesztelés elvégezhető hardver, szoftver vagy adatbázis szinten is.
A biztonsági tesztek célja annak ellenőrzése, hogy a szoftver/alkalmazás/webhely mennyire biztonságos a belső és külső fenyegetések ellen, mennyire lehet behatolni egy rendszerbe annak megzavarása és/vagy információmásolás céljából. Általában Vörös és Kék csapat között oszlik meg a biztonsági testelés, a tesztelők egy csoportja (Vörös team) megpróbálja megsérteni a biztonsági rendszereket, az ellenfél csoport (Kék team) pedig megpróbálja megvédeni azokat.
A stressz teszt akkor kerül végrehajtásra, ha ellenőrizni kívánják, hogyan és mikor hibásodik meg egy rendszer. Ezt úgy érik el, hogy nagy terhelésnek vetik alá a rendszert, például összetett adatbázis-lekérdezéseket hajtanak végre, folyamatos bevitelt generálnak a rendszerbe vagy az adatbázisba.
A használhatósági tesztelése során valódi felhasználók tesztelik az alkalmazást vagy a rendszert. Eközben a tesztelő szakemberek megfigyelik a felhasználókat, és ellenőrzik az alkalmazások működését a szoftver használata közben, majd dokumentálják a felmerülő problémákat.
A Volume tesztelést úgy hajtják végre, hogy a szoftvert vagy alkalmazást nyomás alá helyezik, „elárasztják” annak érdekében, hogy hatalmas mennyiségű adatot generáljanak a rendszer viselkedésének és válaszidejének ellenőrzésére.
A White-box tesztelés során az alkalmazás belső struktúráját vagy működését tesztelik. A teszteléshez a rendszer belső perspektíváját használják a tesztesetek tervezéséhez. A White-box típusú tesztek elvégzéséhez ismerni szükséges a belső szoftvereket és a kódok működését.