Databases Reference
In-Depth Information
, actualTable);
}
Mit dem ersten Test wird geprüft, ob ein neuer korrekter Da-
tensatz erfolgreich in die Tabelle Gehege eingetragen werden
kann. Dazu wird im ersten Schritt der neue Datensatz in die
Tabelle mit dem normalen JDBC-Befehl eingefügt. Im nächsten
Schritt wird ein Objekt vom Typ IDataSet erzeugt, das ebenfalls
auf der aktuellen Datenbankverbindung basiert. Anschaulich
kann man sich vorstellen, dass über die Variable con die be-
kannten JDBC-Befehle zur Nutzung der Datenbank eingesetzt
werden, während alle Variablen, deren Typen mit „I“ beginnen,
zur Überprüfung mit Hilfe von DBUnit, z. B. mit Hilfe der
Variabe connDBU, genutzt werden. Die Schnittstelle ITable ist
der zweite zentrale Typ, der zur Verwaltung von Datenmen-
gen, hier genauer Tabellen, existiert und der einfach in Verglei-
chen einsetzbar ist. Im konkreten Fall befindet sich in
actualTable der gesamte Inhalt der Tabelle Gehege. Danach
wird ein Vergleichsdatensatz aus einer XML-Datei test1.xml ge-
lesen, die folgenden Inhalt hat.
<?xml version="1.0" encoding="UTF-8"?>
<dataset>
<Gehege GNr="1" Gname="Wald" Flaeche="30" />
<Gehege GNr="2" Gname="Feld" Flaeche="20" />
<Gehege GNr="3" Gname="Weide" Flaeche="15" />
<Gehege GNr="4" Gname="Steppe" Flaeche="40" />
</dataset>
Man muss nicht immer mit allen eingelesenen Daten arbeiten,
so befinden sich in expectedTable alle Datensätze, die sich auf
die Klasse Gehege beziehen, was allerdings im konkreten Fall
einfach alle Datensätze sind.
Die eigentliche Überprüfung findet mit den Klassenmethoden
der Klasse Assertion statt, die vom DBUnit-Framework stammt
und nicht mit der Klasse Assert verwechselt werden darf, wo-
bei in den Tests natürlich auch Methoden von Assert genutzt
werden dürfen.
Die Klasse Assertion enthält mehrere Vergleichsmethoden, mit
denen Objekte vom Typ IDataSet und ITable jeweils unterei-
nander verglichen werden. Im konkreten Fall wird geprüft, ob
die aus der XML-Datei eingelesenen Daten genau der aktuellen
Gehege-Tabelle entsprechen.
@Test
public void testGehegeMitVorhandenerNummer() {
Klasse Assertion
317
Search WWH ::




Custom Search