diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 8ed4c35..a5bc846 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -1,51 +1,45 @@ # 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 -Bedingungen er auftritt +- Fast +- Independent +- Repeatable +- Selfevaluating +- Timely +- Readable +- Trustworthy +- Fast +- Maintainable