Az adatbázis tesztelése dbunit segítségével

Az adatbázis tesztelése DBUnit segítségével

Ha Java-adatbázisok tesztelését végezte, akkor valószínűleg szembe kellett néznie az adatok előzetesen feltöltött tábláinak problémájával. Írja be a kódot a táblák kitöltéséhez - nem túl kényelmes. Az egyik megoldás a DBUnit keretrendszer.

A DBUnit olyan nyílt forráskódú keretrendszer, amely segít megoldani az olyan problémákat, mint az adatbázisok, táblák, adatbázisok és adatkészletek összehasonlítása egy adatbázisból. Ez a JUnit kiterjesztése is.

0. lépés: A DBUnit bemutatása

Hol és miért használják ezt a technológiát?

Mielőtt bármilyen szoftverterméket megírna, átmegy egy sor teszttel. Mivel legtöbbjük adatbázisokat használ, érdemes ellenőrizni a kódot az adatbázisban.

A legfontosabb dolog az adatbázis feltöltése, az eredmények összehasonlítása, táblázatok, az adatbázis tisztítása a tesztek futtatása után. Mindezek a műveletek teljesen megvalósíthatók a JUnit használatával. De ha az adatbázisnak sok kapcsolata van, sok változtatást kell ellenőriznie, a kód hatalmas méretre nő.

Ezzel a DBUnit lehetővé teszi az automatikus adatbázis-takarítást, egy adatkészletet egy xml fájlba töltve, és összeveti az adatokat az egész készletekkel. Ez biztosítja a tesztelés legjobb lefedettségét, és pontosabbá teszi a kódot.

1. lépés: függőségek hozzáadása

Elkezdjük azzal a tényt, hogy a használat megkezdéséhez csatlakoztatnunk kell ezt a könyvtárat. Ezt a függést Maven-ben használjuk.

A DBUnithez tartozik egy logger is a működéséhez. Hozzáadjuk a projekthez.

Ezt követően a DBUnit kapcsolat befejeződött. Most meg kell adnunk a szükséges könyvtárakat a projektünkhöz. Könyvtárakra van szükség adatbázisunkhoz - Mysql. JPA. Hibernate. valamint a JUnit. Az alábbiakban olvasható a Maven konfigurációs fájl végleges változata az összes kapcsolódó könyvtárral.

2. lépés: Hozzon létre elemeket a teszteléshez

Létre kell hozni egy entitást, amelyet tesztelni fogunk a DBUnit segítségével. Pérsonot választottam. Ennek a lépésnek a fogalmához szüksége lehet a JPA-val kapcsolatos ismeretekre. Erről az adatbázisban dolgozó JPA-lecke láthatja.

3. lépés: Szolgáltatás létrehozása az entitáskezeléshez

Kezeléséhez hozzon létre egy szolgáltatást. Törölni, hozzáadni, szerkeszteni és fogadni az osztályunk objektumát az adatbázisból.

A projektbeállítás végén a fő struktúrában a következő struktúra legyen:

Az adatbázis tesztelése dbunit segítségével

4. lépés Bevezetés a tesztkörnyezetbe

Lássuk, hogyan néz ki a tesztünk szerkezete.

Az adatbázis tesztelése dbunit segítségével

Személyes teszt - a "személyiség"

A DBUnitConfig a mi konfigurációs osztályunk, amely lehetővé teszi számunkra, hogy gyorsabban hozzunk létre DBUnit teszteket. Tartalmaz adatbázis beállításokat és tesztelési viselkedést.

db.config.data - tartalmazza a beállításokat az adatbázisban

A person-data.xml-inside egy adatbázist tartalmaz az adatbázis inicializálására.

person-data - *. xml - olyan adatkészletet tartalmaz, amelyet az adatbázisban végrehajtott műveletek elvégzése után meg kell kapni.

5. lépés: DBUnit konfiguráció

Állítsuk be DBUnitünket. Létre kell hoznunk egy olyan osztályt, amely örökölni fog, és a leszármazottjainkban személyre szabott funkciókat használhatunk, és nem kell minden alkalommal konfigurálni.

IDatabaseTester teszter - egy olyan objektum, amelynek funkcionalitásával összehasonlítjuk a tablettákat és a bd-t.

Tulajdonságok - itt tároljuk adatainkat az adatbázisban. Csatlakozási beállítások

Az IDataSet beforeData olyan objektum, amely adatokat tartalmaz az OBD inicializálására a teszt végrehajtása előtt.

setUp () - Ebben a módszerben inicializáljuk a teszt futtatása előtt szükséges adatokat. Itt meghatározzuk a teszterünket

nyilvános DBUnitConfig (String name) - a konstruktor inicializálja az adatbázisunkat a rendszerben, hogy további hozzáférést nyerjünk és képesek vagyunk folytatni a kölcsönhatást a jövőben.

getDataSet () - visszaadja adatkészletünket

DatabaseOperation getTearDownOperation () - törli az adatbázist a tesztek futtatása után

6. lépés: Tesztelési osztály létrehozása az adatbázis kitöltéséhez

Most írja be a tesztelési osztályunkat, amely kitölti és tisztítja az adataikat, ellenőrizze a következetességet.

setUp () - felülbíráljuk a módszert arra, hogy adatkészletünket egy adott teszthez továbbítsuk.

. FlatXmlDataSetBuilder () építmények (...) - létrehoz egy adathalmaz az átadott neki a fájlt patak xml leírását tartalmazó adat, hogy rögzíteni kell a megfelelő lemezt. A felsõ szintû adatkészlet címkéjébõl áll, amelybe tartoznak az attribútumokkal ellátott címkék. A névtáblát - név jelek, sajátosságoknak - plate attribútumok az adatbázisban.

7. lépés: Hasonlítsa össze az értékeket

Ebben a lépésben teszteljük az eredményeket a DBUnit képességekkel. Ez megadja nekünk az IDatabaseTester felületet. Ez az interfész lehetővé teszi, hogy az örökség használata nélkül tesztelje az adatbázist, mint mi. A DBUnit könyvtárban van egy Assertion osztály a táblák vagy teljes adatkészletek összehasonlítására egymással. Összehasonlítjuk az egész adatsort.

Tekintsünk egy példát a DB helyes kitöltésének ellenőrzésére a testGetAll ()

Először is létrehozunk egy sor várt adatot:

Hozzon létre egy adatkészletet az adatbázisban lévő meglévő adatokból:

Összehasonlítjuk az adatkészleteket:

Ha összehasonlítjuk a címkéket és adathalmazok, ahol van auto növekmény mező típusa lehet a hibákat a közvetlen összehasonlítására, mert ha töröl egy mezőt, és egy új az adatbázisba, az index emelkedni fog, ami nem felel meg az index egy sor adatok XML fájl . Ezért egy megoldás figyelmen kívül hagyja a mezőt, ahogy azt a fentiekből is kitűztük.

A DBUnit használatának két típusát vizsgáltuk.

Az első, a DBTestCase-től örökölt. Így van egy konfigurációval rendelkező osztályunk a további alkalmazásokhoz a gyors konfiguráció és töltés érdekében.

Másodszor, az IDatabaseTester használata. Képes lesz arra, hogy töltsük ki az adatbázis adatait az xml fájlból az alábbi kóddal:

A www.DevColibri.com webhely újranyomtatására vonatkozó szabályok

Tisztelt látogató a projekt!

Önnek szabadon felhasználhatja az Ön céljait bármely dokumentumot, az alábbi feltételek mellett:

• Az újranyomtatott dokumentum végén egy linket kell elhelyezni a www.devcolibri.com webhelyre.

Tisztelettel!
[email protected]

Kapcsolódó cikkek