Nem funkcionális tesztelés

⚡ Okos összefoglaló

A nem funkcionális tesztelés ellenőrzi egy szoftveralkalmazás teljesítményét a megbízhatóság, a használhatóság, a biztonság, a skálázhatóság és egyéb minőségi tulajdonságok szempontjából. Ez az útmutató bemutatja a célokat, a paramétereket, a jellemzőket, a gyakori tesztelési típusokat és a minőségbiztosítási csapatok által használt gyakorlati példa teszteseteket.

  • 🎯 Minőségi fókusz: A nem funkcionális tesztelés azt méri, hogy egy rendszer hogyan teljesít, nem pedig azt, hogy mit csinál.
  • 📏 Mérhető kritériumok: Minden követelményt számszerűsítenek, kiküszöbölve a szubjektív megfogalmazásokat, mint például a jó, jobb vagy legjobb.
  • 🔐 Kritikus paraméterek: A nem funkcionális verifikációban a biztonság, a megbízhatóság, a skálázhatóság, a használhatóság és a hordozhatóság dominál.
  • 🧪 Különböző teszttípusok: A teljesítmény-, terhelés-, stressz-, regenerálódási és kompatibilitási tesztelések mindegyike specifikus minőségi kockázatokat kezel.
  • 📊 Üzleti hatás: Az erős, nem funkcionális tesztelés csökkenti a termelési költségeket, az állásidőt és az ügyfelek elégedetlenségét a kiadásokon átívelően.

Nem funkcionális tesztelés

Mi az a nem funkcionális tesztelés?

Nem funkcionális tesztelés A szoftvertesztelés egy olyan kategóriája, amely egy alkalmazás nem funkcionális aspektusait – teljesítményt, használhatóságot, megbízhatóságot és hasonló minőségi tulajdonságokat – validálja. A rendszer felkészültségét olyan kritériumok alapján értékeli, amelyeket a funkcionális tesztelés soha nem vizsgál, biztosítva, hogy az alkalmazás valós körülmények között is megfeleljen a vállalati elvárásoknak.

A nem funkcionális tesztelés klasszikus példája annak mérése, hogy hány egyidejű felhasználó tud bejelentkezni egy alkalmazásba teljesítményromlás nélkül. A nem funkcionális tesztelés ugyanolyan kritikus, mint a funkcionális tesztelés, mivel közvetlenül befolyásolja az ügyfél-elégedettséget és a termék általános megítélését.

Mi a nem funkcionális tesztelés áttekintő diagramja?

A nem funkcionális tesztelés céljai

A nem funkcionális tesztelést a termék általános minőségének és élettartamának javítása érdekében végzik. A főbb célok a következők:

  • Növelje a termék használhatóságát, hatékonyságát, karbantarthatóságát és hordozhatóságát.
  • Csökkentse a termelési kockázatot és a nem funkcionális hibákhoz kapcsolódó költségeket.
  • Optimalizálja a termék telepítésének, beállításának, végrehajtásának, kezelésének és monitorozásának módját.
  • Mérési eredmények és mutatók gyűjtése belső kutatáshoz és fejlesztéshez.
  • A termék viselkedésének és a használt technológiáknak a jobb megértése.

A nem funkcionális tesztelés jellemzői

A következő jellemzők határozzák meg, hogyan kell a nem funkcionális tesztelést megtervezni és végrehajtani:

  • Mérhetőnek kell lennie, nem hagyva teret a szubjektív leírásoknak, mint például a jó, jobb vagy legjobb.
  • A pontos számok általában a követelmények kidolgozásának kezdetén nem ismertek.
  • A követelményeket rangsorolni kell, hogy a legnagyobb kockázatú területeket először kezeljék.
  • A minőségi attribútumokat pontosan azonosítják a szoftverfejlesztési fázisban.

Nem funkcionális tesztelési paraméterek

A nem funkcionális tesztelési erőfeszítések hatókörének meghatározására jellemzően tizenegy paramétert használnak:

  1. Biztonság: Azt méri, hogy egy rendszer hogyan védett a belső vagy külső forrásokból származó szándékos és véletlen támadásokkal szemben. Biztonsági teszteléssel ellenőrizve.
  2. Megbízhatóság: Az a mérték, amennyire egy rendszer folyamatosan, hiba nélkül ellátja a meghatározott funkcióit. Megbízhatósági teszteléssel igazolva.
  3. Túlélhetőség: Megerősíti, hogy a rendszer továbbra is működik és meghibásodás után helyreállítja magát. Helyreállítási teszteléssel ellenőrizve.
  4. Elérhetőség: Meghatározza, hogy a felhasználó milyen mértékben támaszkodhat a rendszerre működés közben. Stabilitási teszteléssel igazolva.
  5. használhatóság: Az a könnyedség, amellyel a felhasználók megtanulhatják, működtethetik, bemeneteket készíthetnek elő és kimeneteket használhatnak fel a rendszerből. Használhatósági teszteléssel igazolva.
  6. skálázhatóság: Az a mérték, amennyire egy szoftveralkalmazás képes bővíteni feldolgozási kapacitását a növekvő igények kielégítése érdekében. Skálázhatósági teszteléssel igazolva.
  7. Átjárhatóság: Ellenőrzi, hogy egy szoftverrendszer hogyan illeszkedik más szoftverrendszerekhez. Interoperabilitási teszteléssel igazolva.
  8. Hatékonyság: A rendszer kapacitás-, mennyiség- és válaszidő-kezelésének mértéke terhelés alatt.
  9. Rugalmasság: Az alkalmazás működésének könnyedsége különböző hardver- és szoftverkonfigurációk, például változó RAM- vagy CPU-specifikációk esetén.
  10. Hordozhatóság: A szoftver rugalmassága abban, hogy a jelenlegi hardver- vagy szoftverkörnyezetéből egy másikba költözzön.
  11. Újrahasználhatóság: Egy szoftverrendszer azon részére utal, amely egy másik alkalmazásban való használatra adaptálható.

Nem funkcionális tesztelési paraméterek diagramja

Szoftvertesztelés típusa

A szoftvertesztelést nagyjából három kategóriába sorolják:

  • Funkcionális tesztelés
  • Nem funkcionális tesztelés
  • Karbantartási tesztelés

Minden kategória több tesztelési szintet tartalmaz, amelyeket a csapatok gyakran tesztelési típusokként emlegetnek. A különböző könyvek és referenciaanyagok kissé eltérően osztályozhatják őket, ezért kisebb eltérésekre lehet számítani.

A tesztelési típusok listája nem teljes – több mint 100 különböző tesztelési típus létezik, és folyamatosan jelennek meg újak. Nem minden típus vonatkozik minden projektre; a hatókör a tesztelt alkalmazás jellegétől, kockázati profiljától és összetettségétől függ.

A nem funkcionális tesztelés típusai

A minőségbiztosítási csapatok által végzett leggyakoribb nem funkcionális tesztelési típusok a következők:

  • Teljesítményfelmérés
  • Terhelésvizsgálat
  • Feladatátvételi tesztelés
  • Kompatibilitási tesztelés
  • Használhatósági tesztelés
  • Stressz tesztelés
  • Karbantarthatósági tesztelés
  • Méretezhetőség tesztelése
  • Hangerőteszt
  • Biztonsági tesztelés
  • Katasztrófa utáni helyreállítás tesztelése
  • Megfelelőség tesztelése
  • Hordozhatóság tesztelése
  • Hatékonysági tesztelés
  • Megbízhatósági tesztelés
  • Alapszintű tesztelés
  • Tartóssági tesztelés
  • Dokumentáció tesztelése
  • Helyreállítási tesztelés
  • Nemzetköziesítési tesztelés

Példa tesztesetek nem funkcionális teszteléshez

A következő példák bemutatják, hogyan íródnak a nem funkcionális tesztesetek valós projektekben:

Próbaper # Teszt eset Domén
1 Az alkalmazás betöltési ideje nem haladhatja meg az 5 másodpercet, ha akár 1000 felhasználó is hozzáfér egyszerre. Teljesítményfelmérés
2 A szoftvernek telepíthetőnek kell lennie az összes támogatott verzióra. Windows és a macOS. Kompatibilitási tesztelés
3 Minden webes képnek tartalmaznia kell leíró alt tageket. Kisegítő lehetőségek tesztelése

GYIK

A funkcionális tesztelés ellenőrzi, hogy a rendszer mit csinál a megadott követelményekhez képest. A nem funkcionális tesztelés a rendszer teljesítményét méri, beleértve a sebességet, a megbízhatóságot, a használhatóságot és a biztonságot, biztosítva, hogy az alkalmazás megfeleljen a minőségi szabványoknak az alapvető funkciók viselkedésén túl.

A népszerű eszközök közé tartozik JMeter és a LoadRunner a teljesítmény érdekében, Selenium a használhatóság automatizálása érdekében, Burp Suite és az OWASP ZAP a biztonságért, a BrowserStack pedig a kompatibilitásért. Minden eszköz egy adott, nem funkcionális területet céloz meg, amelyet a minőségbiztosítási csapatok mérni szeretnének.

A nem funkcionális tesztelést akkor kell elkezdeni, amikor a rendszer funkcionálisan stabil, és a nagyobb kiadások előtt. A teljesítmény-, biztonsági és megbízhatósági teszteket általában a tesztelés késői fázisaira ütemezik, de a balra tolással végrehajtott stratégiák a fejlesztéssel párhuzamos korábbi végrehajtást ösztönzik.

Minden paramétert számszerűsíthető küszöbértékekhez viszonyítunk. A teljesítményt a válaszidő és az átviteli sebesség, a biztonságot a sebezhetőségek száma, a használhatóságot a feladatvégzési arány, a megbízhatóságot pedig a hibák között eltelt átlagos idő alapján mérjük. Numbers szubjektív véleményeket helyettesíteni.

Mindkettő. A teljesítmény-, terhelés-, stressz- és biztonsági tesztelés nagymértékben támaszkodik az automatizálásra a méretezhetőség és az ismételhetőség miatt. A használhatósági és akadálymentesítési tesztelés gyakran manuális megfigyelést, szakértői felülvizsgálatokat vagy segítő technológiai ellenőrzéseket igényel az automatizált eszközök mellett.

A mesterséges intelligencia terhelési profilokat generál, előrejelzi a teljesítménybeli szűk keresztmetszeteket, rangsorolja a kockázatos teszteseteket, és automatikusan elemzi a naplóadatokat. A mesterséges intelligencia által vezérelt platformok csökkentik a végrehajtási időt, és gyorsabban felszínre hozzák a regressziókat.ping A minőségbiztosítási csapatok a nem funkcionális lefedettséget a kiadások között skálázzák.

Nem. A mesterséges intelligencia felgyorsítja a szkennelést, az alapvonal létrehozását és az anomáliadetektálást, de a szakértő tesztelők továbbra is értelmezik az eredményeket, validálják a támadási láncokat és tervezik a tesztforgatókönyveket. A mesterséges intelligencia kiegészíti az emberi ítélőképességet a nem funkcionális tesztelésben, ahelyett, hogy helyettesítené a tapasztalt minőségbiztosítási mérnököket.

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