Izolált automatikus tesztgenerálás támogatása objektumállapotok felderítésével

OData támogatás
Konzulens:
Honfi Dávid
Méréstechnika és Információs Rendszerek Tanszék

Napjainkban a minőségi szoftverfejlesztés elengedhetetlen eleme a tesztelés. Számos esetben tapasztalható, hogy a tesztelés és az implementáció egyidőben történő végrehajtása jobb minőségű teszteket eredményez. Jelenleg azonban kevés olyan eszköz áll rendelkezésre, amely megkönnyíthetné a valóban jó minőségű, hatékony tesztek készítését.

A dolgozatom során először röviden tárgyalom a tesztelés helyét a szoftverfejlesztési ciklusban, majd a tesztelési megközelítések közül az egységtesztelést fejtem ki bővebben. Továbbá ismertetem, hogy egy hatékony tesztgeneráló eszköz létrehozása alapjaiban változtathatná meg a szoftverfejlesztést, hiszen segítségével automatizálni lehetne a tesztelési folyamatot, így az esetleges emberi mulasztások esélye is csökkenne.

A tesztelést elősegítőleg egy automatikus izolációt megvalósító eszköz támogatását tűztem ki célul. Ehhez egy olyan eszközt valósítottam meg, amely a helyettesített objektumok által módosított egységeket képes az izolálás nélküli állapotok szerint módosítani. Ezt egy automatikus izolációt megvalósító eszköz nem tudja önmagától elvégezni, hiszen működése során nem képes irányítani a vele együtt működő tesztgeneráló eszközt. Erre azonban szükség van, hiszen a tesztelés során előfordulhat, hogy az izolálni kívánt objektum egy olyan egységet módosít amely objektum állapotaitól függ a teszt kimenete. Az általam implementált eszköz képes felkeresni az adott objektum állapotmódosító metódusait illetve meghatározni, hogy ezek mely állapotait módosítják. Az állapotmódosító metódusok ismeretében pedig képes hívási szekvenciák generálására, amelyekkel az objektumok a kívánt állapotba hozhatók. A dolgozatom végén a fejlesztett eszköz működését néhány példán alkalmazva ismertetem.

Letölthető fájlok

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