Tesztgeneráló eszköz fejlesztése biztonságkritikus szoftverhez

OData támogatás
Konzulens:
Dr. Micskei Zoltán Imre
Méréstechnika és Információs Rendszerek Tanszék

A szoftvertesztelés manapság egyre nagyobb hányadát teszi ki a teljes szoftverfejlesztési folyamatnak, különösképpen biztonságkritikus szoftverek esetében, ahol a hibamentesség elengedhetetlen. Sok cég azonban a mai napig manuális tesztelést végez az automatizálásra való átállás költsége és esetleges komplexitása miatt, mely magában foglalja új technológiák feltérképezését, új eszközök használatának bevezetését, manuális tesztelők átképzését, és még sok egyebet. Az automatizálás nem minden esetben jelenti a megoldást, ám sok esetben hosszú távon ez egy kifizetődő befektetés és a későbbi szoftverfejlesztési költségek jelentős mértékben csökkenthetők.

Az automatizálás több szinten megvalósulhat, már az is jelentős előrelépés, ha létrejön egy olyan tesztkörnyezet, melynek segítségével a szoftver fejlődésével a regressziós tesztek könnyedén újrafuttathatók. Jelen diplomamunka ennél egy kicsit tovább megy és az automata tesztadat generálás témakörét járja körül különböző forráskód alapú tesztgeneráló módszerek számbavételével, és azok gyakorlatban való alkalmazhatóságának megvizsgálásával.

A diplomamunka konkrét megoldást kínál Ada95 nyelven írt biztonságkritikus szoftverek forráskód alapú teszteléséhez két megközelítést implementálva: a bemenetek véletlen, illetve szimbolikus végrehajtás segítségével való kiválasztásával. A konkrét tesztadat generáláson túl az eszköz megvalósít egy tesztkörnyezetet, mely alkalmas a generált bemenetek kiértékeléséhez.

Az eszköz képességei számos tesztkóddal lettek vizsgálva, mind rövid, egy-egy nyelvi elemre fókuszáló kóddal, mind összetett, valódi funkcionalitást megvalósító kóddal. A vizsgált esetek alapján kijelenthető, hogy mindkét módszernek vannak gyengeségei, azonban a szimbolikus végrehajtás az esetek nagy százalékában gyorsabban, az elért fedettség függvényében hasznosabb bemeneteket tudott előállítani. Ugyanakkor egy szimbolikus végrehajtáson alapuló eszköz megvalósítása sokkal komplexebb feladat.

A diplomamunka keretében elkészült eszköz a feladatkiírást maradéktalanul megvalósítja, tovább fejlesztve akár komoly üzleti potenciál is lehet benne.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.