Szoftvertesztelési módszertanok: minőségbiztosítási modellek
Mi az a szoftvertesztelési módszertan?
A szoftvertesztelési módszertan olyan stratégiák és tesztelési típusok, amelyek annak igazolására szolgálnak, hogy a tesztelés alatt álló alkalmazás megfelel az ügyfelek elvárásainak. A tesztelési módszerek közé tartozik az AUT érvényesítésére szolgáló funkcionális és nem funkcionális tesztelés. Példák a tesztelési módszerekre Egység tesztelése, Integrációs tesztelés, Rendszer tesztelés, Teljesítményfelmérés stb. Minden tesztelési módszernek van egy meghatározott vizsgálati célja, tesztstratégiája és teljesítése.
Megjegyzések: Mivel a szoftvertesztelés minden fejlesztési módszertan szerves részét képezi, sok vállalat használja a Fejlesztési Módszerek és Tesztelési Módszerek kifejezést köznyelvben. Ezért a Tesztelési Módszerek utalhatnak Waterfall, Agile és más minőségbiztosítási modellekre is, szemben a tesztelési módszerek fenti definíciójával. A különböző tesztelési típusokról folytatott megbeszélés nem ad hozzáadott értéket az olvasók számára. Ezért megvitatjuk a különböző fejlesztési modelleket.
Vízesés modell
Mi ez?
A vízesés modell, a szoftverfejlesztés különböző fázisokon keresztül halad, mint például a követelmények elemzése, tervezése stb. szekvenciálisan.
Mi a tesztelési megközelítés?
A vízesés-modell első fázisa a követelményfázis, amelyben az összes projektkövetelmény teljesen meghatározásra kerül a tesztelés megkezdése előtt. Ebben a fázisban a tesztcsapat ötleteket ad a tesztelés hatóköréről, a tesztelési stratégiáról, és részletes teszttervet készít.
A csapat csak a szoftver tervezésének befejezése után folytatja a tesztesetek végrehajtását, hogy megbizonyosodjon arról, hogy a kifejlesztett szoftver az elvárásoknak megfelelően viselkedik.
Ebben a módszertanban a tesztelő csapat csak akkor lép tovább a következő fázisba, ha az előző fázis befejeződött.
Előnyök | Hátrányok |
---|---|
Ez a szoftvermérnöki modell nagyon egyszerűen tervezhető és kezelhető. Ezért azok a projektek, ahol a követelmények egyértelműen meghatározottak és előre megfogalmazottak, könnyen tesztelhetők egy vízesés modell segítségével. | A vízesés modellben csak akkor kezdheti el a következő fázist, ha az előző fázis befejeződött. Ezért ez a modell nem képes befogadni a nem tervezett eseményeket és a bizonytalanságot. |
Ez a módszertan nem alkalmas olyan projektekre, ahol a követelmények gyakran változnak. |
Iteratív fejlesztés
Mi ez?
Ebben a modellben egy nagy projektet kis részekre osztanak, és mindegyik részt a vízesés modell többszöri iterációjának vetik alá. Az iteráció végén egy új modult fejlesztenek, vagy egy meglévő modult továbbfejlesztenek. Ez a modul integrálva van a szoftver architektúrába, és a teljes rendszert együtt tesztelik
Mi a tesztelési megközelítés?
Amint az iteráció befejeződött, a teljes rendszert tesztelik. A tesztelésből származó visszajelzések azonnal rendelkezésre állnak, és beépülnek a következő ciklusba. Az egymást követő iterációhoz szükséges tesztelési idő a korábbi iterációk tapasztalatai alapján csökkenthető.
Előnyök | Hátrányok |
---|---|
Az iteratív fejlesztés fő előnye, hogy minden ciklus végén azonnal elérhető a teszt visszajelzés. | Ez a modell jelentősen megnöveli a kommunikációs költségeket, mivel minden ciklus végén visszajelzést kell adni az eredményekről, erőfeszítésekről stb. |
Agilis módszertan
Mi ez?
A hagyományos szoftverfejlesztési módszerek azon az előfeltevésen dolgoznak, hogy a szoftverkövetelmények a projekt során állandóak maradnak. De a komplexitás növekedésével a követelmények számos változáson mennek keresztül, és folyamatosan fejlődnek. Időnként maga az ügyfél sem tudja, mit akar. Bár az iteratív modell foglalkozik ezzel a problémával, továbbra is a vízesés modellen alapul.
Az Agilis módszertanban a szoftvert növekményes, gyors ciklusokban fejlesztik. A folyamatok és eszközök helyett inkább az ügyfelek, a fejlesztők és az ügyfelek közötti interakciók kerülnek előtérbe. Az agilis módszertan a változásokra való reagálásra összpontosít, nem pedig az átfogó tervezésre.
Mi a tesztelési megközelítés?
Az agilis fejlesztési módszerek növekményes tesztelést alkalmaznak, így a projekt minden kiadását alaposan tesztelik. Ez biztosítja, hogy a rendszerben lévő hibákat a következő kiadás előtt kijavítsák.
Előnyök | Hátrányok |
---|---|
A követelményeknek való megfelelés érdekében a projektben bármikor módosítható. | Az ügyfelek folyamatos interakciója további időnyomást jelent minden érdekelt félre, beleértve magát az ügyfelet, a szoftverfejlesztő és a tesztelő csapatokat is. |
Ez a fokozatos tesztelés minimalizálja a kockázatokat. |
Extrém programozás
Mi ez?
Az extrém programozás az agilis módszertan egyik fajtája, amely a rövid fejlesztési ciklusokban hisz. Egy projekt egyszerű mérnöki feladatokra oszlik. A programozók kódolnak egy egyszerű szoftvert, és visszajelzést kérnek az ügyféltől. RevAz ügyféltől kapott pontok beépítésre kerülnek, és a fejlesztők folytatják a következő feladatot.
Az extrém programozásban a fejlesztők általában párban dolgoznak.
Extrém programozás olyan helyeken használják, ahol az ügyfelek igényei folyamatosan változnak.
Mi a tesztelési megközelítés?
Az extrém programozás egy tesztvezérelt fejlesztést követ, amelynek leírása a következő:- Hozzáadása Teszt eset a tesztcsomagba, hogy ellenőrizze a még fejlesztés alatt álló új funkciót
- Futtassa le az összes tesztet, és nyilvánvalóan a hozzáadott új tesztesetnek sikertelennek kell lennie, mivel a funkció még nincs kódolva
- Írjon egy kódot a funkció/funkció megvalósításához
- Futtassa újra a tesztcsomagot. Ezúttal az új tesztesetnek át kell mennie, mivel a funkcionálisan kódolásra került
Előnyök | Hátrányok |
---|---|
A homályos szoftvertervezést szem előtt tartó ügyfelek extrém programozást használhatnak | A szoftverfejlesztő csapat és az ügyfelek közötti találkozók megnövelik az időigényt. |
A folyamatos tesztelés és a kis kiadások folyamatos integrációja biztosítja, hogy a szoftverkód kiváló minőségű legyen |
Melyik szoftvermódszert válassza?
Rengeteg módszer áll rendelkezésre a szoftverfejlesztéshez és a megfelelő teszteléshez. Minden vizsgálati technikát és módszertant egy meghatározott célra terveztek, és megvannak a maga relatív előnyei és hátrányai.
Egy adott módszertan kiválasztása számos tényezőtől függ, például a projekt jellegétől, az ügyfél igényeitől, a projekt ütemezésétől stb.
Tesztelési szempontból egyes módszerek a fejlesztési életciklus korai szakaszában szorgalmazzák az input tesztelését, míg mások megvárják, amíg a rendszer működő modellje elkészül.
Hogyan állítsunk be szoftvertesztelési módszereket?
A szoftvertesztelési módszereket nem szabad pusztán a szoftverkód tesztelése érdekében felállítani. Figyelembe kell venni az összképet, és a projekt elsődleges célját meg kell elégíteni a tesztelési módszertannal. Tekintse meg ezt a jó hírű listát szoftvertesztelő szolgáltatók aki segíthet a projekt céljaihoz igazodó hatékony tesztelési stratégiák kidolgozásában.
Ütemezés
A reális ütemezés a kulcsa a sikeres tesztelési módszertan megvalósításának, és az ütemezésnek meg kell felelnie a csapat minden tagjának igényeinek.
Meghatározott szállítmányok
Annak érdekében, hogy a csapat minden tagja ugyanazon az oldalon maradjon, jól meghatározott eredményeket kell biztosítani. A szállítmányoknak közvetlen tartalmat kell tartalmazniuk, minden félreértés nélkül.
Teszt megközelítés
Amint az ütemezés elkészült, és a meghatározott teljesítések elérhetővé válnak, a tesztelő csapatnak képesnek kell lennie a megfelelő vizsgálati megközelítés megfogalmazására. A definíciós dokumentumoknak és a fejlesztői értekezleteknek jelezniük kell a csapat számára a projekthez használható legjobb tesztmódszert.
Jelentő
Az átlátható jelentéskészítést nagyon nehéz megvalósítani, de ez a lépés meghatározza a projektben alkalmazott tesztelési megközelítés hatékonyságát.