diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 680bba0..b5c92a9 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -307,6 +307,27 @@ Durch automatisiertes Testen wird viel Zeit und Geld gespart. Zudem wird die Wie Unitttests werden am Anfang der Entwicklung durchgefuehrt. Sie sind, im Gegensatz zu Application- und Modultests, einfach zu warten und zeigen, wo Fehler existieren und unter welchen Bedingungen sie auftreten. Application- und Modultests hingegen zeigen nur, dass ein Fehler existiert, aber nicht, wo und wann er auftritt. Ausserdem sind diese Tests wesentlich aufwendiger und teurer als Unittests. +## SU 09 (21.12.2022) +### Lernziele +- Unitttests + - Unittest sind vorherrschende Testart + - Voraussetzungenn fuer einen guten Unittests (z.B. schnell, lesbar, vertrauenswuerdig) +- Test Driven Development (Vorgehensweisse zur Erstellung von Unittests) + - Grundlagen Testabdeckung + - oft als KPI missbraucht + - zur Beurteilung der Vertrauenswuerdigkeit des Testrahmens wichitg + - TDD fuehrt zu hoher, aber nicht 100%igen Testabdeckung + - TDD fuehrt zu 100%igen Anforderungsabdeckung + - Grundlagen Vorgehen + - Formalisierung des Entwicklungsprozesses + - "Baby-Steps" bei der inkrementellen Entwicklung +- Uebungen zu Unittests + + +### Erkenntnis +Ein Unittest ist muss vertrauenswuerdig sein. Dies bedeutet, dass der Produktivcode auch wirklich ausgeführt wird und der Test aus dem richtigen Grund auch fehlschlaegt. +### Wiederholung +Durch die niedrigen Kosten, hohe Stabilitaet, Kritikatilitaet und die darauß folgende moegliche hohe Anzahl und hohe Wiederholungszahl sind Unittests die ueberwiegende Testart und somit die am hauefigsten zu erstellenden Tests.