@ -149,3 +149,17 @@ Mit Tests wird die Qualität unseres Produktes bestimmt und geklärt, ob man mit
### Wiederholung
### Wiederholung
An der Qualität der Tests kann man direkt mitwirken. EIgentlich sollte es schon im vorhinein, beim erstellen des Codes, passieren. Mithilfe des Clean Code und des uns bekannten SOLID Printips in etwa. Die wichtigsten Regeln sind Seperation of Concerns, also das möglichst unabhängige Aufstellen von Code, welcher sich nicht gegenseitig beeinflusst. Dependency Inversion sagt aus, dass Module höherer Ebenen nicht von Modulen niedrigerer Ebenen abhängen sollen. Ebenfalls sollen die möglichst nächsten Objekte gekoppelt sein. Das Gegenteil wäre, wenn viele verschiedene Objekte miteinander "kommunizieren", wodurch die Testbarkeit leidet.
An der Qualität der Tests kann man direkt mitwirken. EIgentlich sollte es schon im vorhinein, beim erstellen des Codes, passieren. Mithilfe des Clean Code und des uns bekannten SOLID Printips in etwa. Die wichtigsten Regeln sind Seperation of Concerns, also das möglichst unabhängige Aufstellen von Code, welcher sich nicht gegenseitig beeinflusst. Dependency Inversion sagt aus, dass Module höherer Ebenen nicht von Modulen niedrigerer Ebenen abhängen sollen. Ebenfalls sollen die möglichst nächsten Objekte gekoppelt sein. Das Gegenteil wäre, wenn viele verschiedene Objekte miteinander "kommunizieren", wodurch die Testbarkeit leidet.
## Vorlesung vom 09.01.2023
### Lernziel
Man sollte schon während der Entwicklung auf die Testbarkeit achten, was mit dieser Vorlesung beschrieben wurde.
### Erkenntnis
Man sollte sich im Endeffekt, nicht nur aus TDD-Sicht, einen Überblick über das Projekt verschaffen und nicht blind/Schritt nach Schritt, arbeiten. Nach dem TDD sollte man die Tests im Auge behalten und so viel und weit programmieren, dass man die Tetsbedingungen noch erfüllt, sich somit die Arbeit Testfunktional hält.
### Wiederholung
TDD weiter ausgeführt: Am Anfang werden die (Unit-)Tests geschrieben, welche man benötigt, bspw. um die Funktionalität sicherzustellen etc. Diese können erstmals fehlschlagen und werden es auch, da der Code fehlt. Diesen schreiben wir jetzt, jedoch erstmals nur das Minimum, um die Testanforderungen zu bestehen. Weiter wird der Code aufgebaut, dabei dürfen die Tests jedoch nicht vernachlässigt werden. Letztendendes haben wir einen Code und dessen Tests, welche parallel "gewachsen" sind.