@ -261,3 +261,20 @@ Die Vorlesung betonte die Bedeutung des automatisierten Testens in der Softwaree
### Wiederholung:
### Wiederholung:
Diskutiert wurden die Kriterien für die Automatisierung von Tests, die Unterscheidung zwischen UnitTests und Application/Module-Tests sowie die Eigenschaften, die einen guten UnitTest ausmachen (schnell, unabhängig, wiederholbar, selbstüberprüfend, zeitnah). Außerdem wurde die Rolle von Test-Doubles (Stub, Fake, Mock) und deren Bedeutung für die Isolation und Testbarkeit des Codes beleuchtet. Die Vorlesung zeigte auch, wie Clean Code-Prinzipien zur Verbesserung der Testbarkeit beitragen.
Diskutiert wurden die Kriterien für die Automatisierung von Tests, die Unterscheidung zwischen UnitTests und Application/Module-Tests sowie die Eigenschaften, die einen guten UnitTest ausmachen (schnell, unabhängig, wiederholbar, selbstüberprüfend, zeitnah). Außerdem wurde die Rolle von Test-Doubles (Stub, Fake, Mock) und deren Bedeutung für die Isolation und Testbarkeit des Codes beleuchtet. Die Vorlesung zeigte auch, wie Clean Code-Prinzipien zur Verbesserung der Testbarkeit beitragen.
# Vorlesung vom 09.01.2024
## Lernziele:
- Verstehen der Qualitätskosten im Zusammenhang mit der Softwareentwicklung.
- Kenntnisse darüber, wie man einen guten UnitTest schreibt.
- Bewusstsein für die Bedeutung von vertrauenswürdigen und zeitnahen Tests.
- Einsicht in die Vorgehensweise und die Vorteile von Test Driven Development (TDD).
- Verständnis für die Rolle der Testabdeckung und der Anforderungsabdeckung in TDD.
- Begreifen des TDD-Microzyklus und der inkrementellen Codeentwicklung.
## Erkenntnis:
Diese Vorlesung beleuchtete die Rolle von UnitTests und Test Driven Development (TDD) in der Softwareentwicklung. Es wurde hervorgehoben, dass gute UnitTests schnell, unabhängig, wiederholbar, selbstüberprüfend und zeitnah sein sollten. Die Vorlesung unterstrich die Bedeutung von TDD als effektivste Methode zur Erstellung von UnitTests, insbesondere im Hinblick auf hohe Test- und Anforderungsabdeckung.
## Wiederholung:
Schwerpunkte waren die Merkmale guter UnitTests und die Grundprinzipien von TDD. Ein wichtiger Aspekt war, dass TDD zu einer hohen Testabdeckung führt, aber nicht unbedingt zu 100% Testabdeckung. Es wurde betont, dass TDD einen formalisierten Entwicklungsprozess beinhaltet, der sich auf inkrementelle Entwicklung und kontinuierliches Refactoring konzentriert, was die Qualität und Vertrauenswürdigkeit des Codes verbessert.