JPA alapú teszteléstámogatás

Bozóki Szilárd <>
BME

Ferencz Endre <>
BME

Goldschmidt Balázs Dr <>
BME

Budai Péter <>
BME

Napjaink összetett információs rendszerei a felhasználói igények széles skáláját kielégítik, miközben a különböző integrációs lehetőség miatt számos függőséggel rendelkeznek. Ebből kifolyólag mind a hagyományos és az agilis szoftverfejlesztési módszertanok jelentős hangsúlyt fektetnek a tesztelésre. A legtöbb online tartalmat előállító szerver oldali alkalmazás relációs adatbázisokra épül, mégis az objektum relációs leképzés tesztelését megvalósító eszközök száma limitált és nem elég az igények kielégítésére.

A fejlesztés és tesztelés során rendelkezésre állót adat nagyban különbözhet az éles rendszerétől. Főleg biztonsági és adatvédelmi szempontok miatt aggályos az éles rendszer adatainak a használata. Megfelelő tervezéssel azonban előállítható olyan adatstruktúra, ami megfelelően lefedi a felhasználói esetek többségét. Az adatmezők feltöltése a teszt adat generálásnak csak egy kisebb része, ugyanis lényegesen nehezebb kezelni az objektumok közötti bonyolult kapcsolatrendszert, ami döntően befolyásolhatja a működést.

A probléma megoldására mi egy platform független megoldást nyújtunk, ami a Java környezet szabványos objektum relációs leképzésére, a Java Persistence API-ra építkezik. A megoldásunk Java entitás osztályokból kiindulva generál megfelelő kapcsolati rendszerrel rendelkező minta adatokat, amik képesek lefedni a normális és a kivételes esetek nagy részét. A megoldásunkban nagy hangsúlyt fektettünk a generált adatok minőségére, ezért nagyfokú testre-szabhatóságot biztosítottunk.

Az általunk kínált eszköz jelentősen elősegíti a minőségi termékek hatékony előállítását azáltal, hogy a szoftverfejlesztési folyamat legtöbb részében használható, mert már a legkorábbi fejlesztési fázistól kezdve bevethető.