Unit Testing

Eintrag zuletzt aktualisiert am: 13.06.2019

 Fachbücher zum Thema Unit Testing

Als Unit Testing (Deutsch: Komponenttest) wird die Anwendung von Unit Test bezeichnet.

Ein Unit Test ist ein funktionaler Test eines (kleinen) Teils einer Software, um die Korrektheit eines Codeblocks zu testen. Ein Unit Test ist automatisiert, d.h. er wird von einer Software (Unit Testing Framework/Unit Testing Tool) und nicht von einem Menschen manuell durchgeführt. Der Vorteil der Unit Test ist, dass man schnell und damit häufiger testen kann als bei manuellen Tests und somit Fehler (insbesondere Regressionsfehler, die sich durch Änderungen am Programmcode ergeben haben) zeitnah feststellen kann. Unit Test erlauben die automatisierte, wiederholbare, kontinuierliche Prüfung (werkzeuggestützt!).

Die Vorteile des Unit Testings sind um zu größer, je größer die Testabdeckung (Anteil des Programmcodes, der von Unit Tests durchlaufen wird). Eine hundertprozentige Testabdeckung ist in der Theorie wünschenswert. Aus Kostengründen werden aber Unit Tests oft auf kritische Bereiche beschränkt.

Unit Tests sind Entwicklertests (geschrieben und ausgeführt durch die Entwickler)

Man testet:
Normalfall
Randbereiche
Fehlerfall

Ein Unit Test wird für jede Unterroutine/Funktion/Methode geschrieben (vollständiger Test des Codes wird angestrebt!)
Jede Schicht
Jede Komponente
Jedes Objekt
Jede Methode
Jedes Attribut
Jeder Fall

Ziel: sauberer Code, der funktioniert