Unit-Tests
Beim Unit-Test (auch Modultest oder Komponententest genannt) werden die einzelnen Module einer Software getestet. Module sind die kleinsten testbaren Teile einer Software und können bzw. sollen bereits sehr früh im Entwicklungsprozess überprüft werden. Die Korrektur von Fehlern in der Unit-Test-Phase ist im Vergleich zur Korrektur in späteren Phasen sehr preisgünstig. Modul- bzw. Unit-Tests werden typischerweise vom Entwickler selbst geschrieben und ausgeführt.Ziel des Unit-Test ist, die einzelnen Module isoliert von den anderen Modulen zu testen und deren Korrektheit zu überprüfen.
Einer der Hauptvorteile von Komponententests ist das Testen "näher am Fehler". Hierdurch wird das Auffinden von Fehlern beschleunigt und vereinfacht. Aus dem gleichen Grund - also durch Einschränkung der möglichen Fehlerquellen auf einen kleinen und überschaubaren Codebereich - wird auch das Debuggen erleichtert.
Um die einzelnen Module in einem automatischen Ansatz isoliert testen zu können, werden Testrahmen (Test Frameworks) genutzt.
Während der Testdurchführung werden die Tests durch das Framework protokolliert.
Die Vollständigkeit der Unit-Tests muß durch Test-Coverage- bzw. Code-Coverage-Messungen überprüft werden. Hierzu werden Test-Coverage-Analyser, wie Testwell CTC++ verwendet. Testwell CTC++ kann zusammen mit jedem Unittesttool eingesetzt werden.
Während des Unittests werden "lediglich" die einzelnen Module getestet. Fehler während der Integration oder Fehler in Gesamtsystem werden durch die Modultests nicht abgedeckt. Aus diesem Grund müssen Unittests mit anderen Testaktivitäten kombiniert werden.
Seminar Effiziente Unit-Tests für Embedded Systeme