Hallo.
Ich habe zum Thema Testen einiges gelesen, allerdings fehlt
mir noch ein wenig der praktische Bezug.
Der praktische Bezug ist, dass Unittest eben keine externen Zugriff bspw. auf eine Datenbank testen sollten. Klassen welche einen solchen Zugriff ermöglichen sind somit mit Unittests kaum zu testen. Hierzu werden dann sogenannte Integration-Tests geschrieben, welche eben nicht nur die Klasse sondern das ganze Zusammenspiel in obigem Fall, den Datenbankzugriff mit testen.
Ganz praktisch unterscheiden sich Integrationtests dabei dann auch nicht unbedingt von Unittests.
Nachdem Unittests korrekt funktioniert, wird das Zusammenspiel
der Units getestet. Gibt es Tools dafür oder wie wird das
konkret gemacht?
Das hängt ganz davon ab, welches Zusammenspiel eigentlich getestet werden soll. Für obigen Fall eines Datenbankzugriffs gibt es bspw. dbUnit um nur ein „tool“ neben vielen anderen zu nennen.
Um klein anzufängen sind solche Tools aber oft gar nicht nötig. Wenn bspw. ein Service einer Webapplikation getestet werden soll, dann muss nur dafür gesorgt werden, dass selbige in einer Testumgegbung gestartet wird und der Integrationtest nutzt dann das entsprechende Interface (Soap, Rest, http, …) um selbiges zu testen.
Gruss,
Eli