a közös tudás blogja – informatikáról, termékekről, szoftverfejlesztésről és cégvezetésről, céges ügyekről
24 Jun
A wiki-jén megtudható mi is az a szoftvertesztelés, de pár szóban összefoglalom, hogy tudjuk, miről volt szó az “Szoftvertesztelés” konferencián.
A tesztelés a szoftver empirikus vizsgálata, azért hogy információt szolgáltasson az érdekelteknek a vizsgált szoftver minőségéről, a későbbi működési környezetében. Ugyanakkor az üzleti résztvevők objektív szempontból vizsgálhatják az implementációs kockázatokat.
A sikeres tesztek nem azt jelentik, hogy a szoftverben nincs több hiba, hanem csak azt, hogy az eddig felfedezett hibákat kijavítottuk. A tesztelés fő célja, hogy felfedezzük a szoftverhibákat.
Statikus teszt:
a kódelemzés, a program lépésről lépésre kipróbálása és a vizsgálat (review, walkthrough, inspection)
Dinamikus teszt:
előre definiált tesztesetek alapján a kód végrehajtása
Hogyan is teszteljünk?
Blackbox testing, amikor a szoftvert fekete dobozként látja a tesztelő, az implementáció bármilyen ismerete nélkül
Whitebox testing amikor a tesztelő eléri a belső adatokat és az implementációt
Greybox testing, amikor a tesztelő csak az éppen kívánt funkció erejéig látja a szoftver belsejét
Milyen célból?
Acceptance smoke-teszttel kezdődik, ami a triviális hibák felderítését szolgálja,valamint vizsgálja, hogy ne omoljon össze “könnyen” a rendszer, majd UAT (User Acceptance Test)-be torkollik. Célja hogy felderítse, hogy a megrendelői igényeket kielégíti-e a szoftver
Regression Célja, hogy a változtatások által esetleg beleprogramozott hibákat felderítse, ilyenkor le kell futtatni az eddigi teszteseteket is hogy meggyőződjünk, hogy egy régebbi hiba nem bukkant fel ismét
ÉS vannak a nem funkcionális tesztek:
Performance terheléses teszt
stability képes-e a szoftver futni a megkívánt ideig (legalább)
usability elég könnyen kezelhető-e
security elég biztonságos-e
internationalization and localization lehet-e minden elemét másik nyelvre átültetni (meg dátumot másképp kijelezni, szövegirányt változtatni….stb)
A tesztelési folyamat:
Unit testing a legkisebb modulok különálló tesztje
Integration testing ezek az önmagukban jól működőnek feltételezett modulok vajon együtt is jól működnek-e
System testing az integrált rendszer vajon jól működik-e
System integration testing vajon a későbbi helyén jól működik-e
A tesztelés elemei:
Teszteset Informálisan: Leírja, hogy a maximum pár lépés során milyen inputok megadása mellet milyen output-ot várunk.
Tesztszkript a teszteset, tesztadat és tesztművelet kombinációja, lehet manuális vagy automatizált
Test data A tesztelés során használt adatok (pl random felhasználónevek)
Test suite tesztesetek valamilyen csoportosítás szerinti gyűjteménye
Test harness (szerszámnak mondják btw) a tesztadatok, konfigurációk, test tool-ok összességét szokták tesztszerszámnak mondani
Test plan tesztelési terv
Traceability matrix milyen kapcsolatban vannak a terv és teszt dokumentumok egymással (a fordítás hiánya szándékos)
Minden tesztnél meg kell határozni a belépési és kilépési kritériumokat (pl instabil rendszert nem felhasználói tesztelünk) és persze elemezni kell az eredményt, hogy hibát találtunk-e amit javítani kell-e.
Szóljon hozzá