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.

Bookmark and Share