NoSQLUnit 0.3.2: JUnit-Tests für NoSQL-Datenbanken

Hartmut Schlosser

NoSQLUnit ist eine JUnit-Erweiterung, die das Unit-Testen mit einem NoSQL-Backend erleichtern soll. Im aktuellen Release 0.3.2 ist der Support für die NoSQL-Datenbank Neo4j hinzugekommen.

NoSQLUnit besteht aus zwei Mengen von Rules und einer Reihe von Annotationen. Die erste Rules-Gruppe ist für die Abwicklung des Datenbank-Lebenszyklus zuständig. Hier steht ein In-Memory Mode für die Test-Ausführung sowie ein Managed Mode für das Starten eines NoSQL Servers als Remote-Prozess zur Verfügung (typischerweise für Integrationstests).

Die zweiten Rules sind für die Datenbank-spezifischen Operationen notwendig, wobei hier für jedes System eigene Implementierungen nötig sind. Neben der Neo4j Engine steht bereits eine MongoDB Engine bereit. Möglich ist es auch, mehrere Engines gleichzeitig zu nutzen.

Schließlich stehen die beiden Annotationen @UsingDataSet und @ShouldMatchDataSet zur Verfügung. Mit @UsingDataSet lassen sich Datenbanken mit Datensets versorgen. @ShouldMatchDataSet wird u.a. für die Verifizierung eingesetzt, ob eine Datenbank nach der Testausführung die erwarteten Einträge enthält.

Weitere Infos zur Funktionsweise von NoSQLUnit finden sich in der Dokumentation auf GitHub.

NoSQLUnit benötigt JUnit ab Version 4.10. Jars werden mit dem JDK 6 kompiliert, allerdings sollte eine korrekte Funktionsweise auch mit dem JDK 5 gegeben sein. Im nächsten Release soll übrigens ein weiteres Java-Datenbanksystem integriert werden: Cassandra-Support steht ganz oben auf der NoSQLUnit-Roadmap.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.