Ich möchte meine Klasse MyTypeDAO mit Hibernate 4.1 mit JUnit 4.9 implementiert testen. Ich habe die folgende Frage:DAO-Test: der richtige Weg?
In meiner DAO habe ich eine findById-Methode, die eine Instanz meines Typs durch seine ID abrufen. Wie testet man diese Methode?
Was ich getan habe:
- ich eine Instanz meiner Art erstellen.
- Dann muss ich diese Instanz persistieren, aber wie? Kann ich mich auf meine saveMyType-Methode verlassen? Ich denke nicht, da ich im Testfall bin und diese Methode nicht getestet wird.
- Dann brauche ich die findById Methode mit der ID der Instanz in Schritt erstellt anrufen 1.
- Schließlich prüfe ich, dass die Instanz in Schritt 1 erstellt ist gleich dem, den ich in Schritt erhalten 3.
Irgendeine Idee? Was sind die besten Praktiken?
Ich habe die gleichen Fragen für die Speichermethode, da nach dem Ausführen, muss ich die Sicherungsinstanz abrufen. Auch hier glaube ich nicht, dass ich mich auf meine findById-Methode verlassen kann, da sie noch nicht getestet wurde.
Dank
+1 ... Auch DbUnit vereinfacht diese Aufgabe erheblich, sehen Sie es sich an. – satoshi
ein weiterer +1 für dbUnit. Wenn Sie es jedoch verwenden, verwenden Sie die Funktion zum Exportieren nach XML. Auf diese Weise können Sie alle Ihre Tabellen bearbeiten und dann das XML erstellen: spart viel Zeit. –