# Mein Lerntagebuch für Programmiermethoden und -werkzeuge
## SU 01 (19.12.2023)
## SU 01 (09.01.2024)
### Lernziel
Der Inhal ist :
- Motivation
- Grundlagen
- UnitTests
- Anforderungen an zu testenden Code
- Relevante Literatur
- Motivation
- Grundlagen
Und dann hat Herr Pappendieck diese 4 Punkte in der vorlesung beschprochen.
Und dann hat Herr Pappendieck diese 3 Punkte in der vorlesung beschprochen.
### Erkenntnis
Bei Punkt 3 (UnitTests) hat Herr Pappendieck mit uns beschprochen , Was ein Unittest macht.
Bei Punkt 3 (Grundlagen) hat Herr Pappendieck mit uns über Testabdeckung beschprochen.
Davon habe ich gelernt dass, Unittests ausführbare Dokumentation sind.Und Unittest verifizieren von außen beobachtbares gewünschtes
Verhalten von Code.
Davon habe ich gelernt dass, oft als KPI (key performance indicator) missbraucht,wichtig für die Beurteilung der Vertrauenswürdigkeit des Testhareness und TDD führt zu hoher Testabdeckung, aber nicht zu 100%
(realistisch 70% bis 90%).
### Wiederholung
Punkt 2 (Grundlagen):
Punkt 2 (Motivation):
Unterschied Application/Module–Tests zu UnitTests:
Wie schreibt man einen guten UnitTest?
Applications und Module Test:
- werden spät im Entwicklungsprozess ausgeführt
- Testwerkzeuge sind komplex
- sind aufwendig zu warten
- zeigen, das ein Fehler existiert, aber nicht wo
UnitTest:
- laufen früh im Entwicklungsprozess (idealer Weise nach jedem Speichern)
- Werkzeuge haben einfache API
- sind stabil gegen Änderungen (anderer Units)
- zeigen welche Anforderung nicht erfüllt wird, wo der Fehler existiert und unter welchen