diff --git a/Lerntagebuch.md b/Lerntagebuch.md index 6deac87..9b608bf 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -173,5 +173,30 @@ werden soll. - Unittests : Unit Testing ist das Testen der kleinsten testbaren Einheit einer Anwendung. Er wird während der Kodierungsphase von den Entwicklern durchgeführt. - Modultests sind eine Reihe von Tests, die von einem Tester geschrieben werden, nachdem ein Entwickler die Codierung für das jeweilige Modul abgeschlossen hat. +# Woche 9 +## 1. Was sind die wesentliche Inhalte von Woche 3 ? + +- Was ist eine Test Driven Developement und warum es beim Entwicklung wichtig ist? +- TDD oder Testgetriebene Entwicklung ist ein Vorgang, bei dem Testfälle vor dem Code geschrieben werden, der diese Fälle validiert. +- TDD ist die geeigneste Vorgehensweise zur Erstellung von Unittests, angesichts dass Unittests sehr häufig erstellt würden. +- Beim Testen ist die Testabdeckung oft als KPI (key performance indicator) missbraucht, sie ist notwendig wenn man die Vertrauenswürdigkeit des Testharness beurteilen will. +- TDD führt zu höher Testabdeckung (70% bis 90%) und 100% Anforderungsabdeckung. +- Das Vorgehen beim TDD besteht aus 3 wesentliche schritee und zwar : die Formalisierung des Entwicklungsprozesses, die inkrementelle Entwicklung des Codes in ”Baby-Steps” und die Verhunderung von Flow. + +### TDD microcycle + +- In dem TDD micro cycle lernt man wie die Testgetriebene Entwicklung eigentlich ausgeführt. +- 1. Neuer Test : man muss einen Test schreiben (gerade so viel dass er fehl schlägt). +- 2. Transformation : so viel Produktivcode zu schreiben dass der Test erfüllt wird. +- 3. Refactoring : den Code zu verbessern (Produktion und Test), ohne einen Test zu brechen und ohne neueFunktionalität hinzuzufügen. + +## 2. Was kann man für das Teamprojekt anwenden ? + +- Durch das TDD micro cycle lernt man die optimaler Vorgehensweise um Unittests effizient zu schreiben. +- Man kann den TDD einsetzen um den Entwicklungsprozess im Zusammenhang mit automatisierte Tests zu vereinfachen. + +## 3. Begriff/Thema erklären : +- Testhareness : ein Testharness ist eine Sammlung von Software- und Testdaten, die von Entwicklern zum Unit-Test von Softwaremodellen während der Entwicklung verwendet wird. +- KPI (key performance indicator) : ist eine Methode zur Analyse von Software-Quellcode und quellcodebezogenen IT-Systemen, um Einblicke in geschäftskritische Aspekte der Entwicklung eines Softwaresystems zu gewinnen, wie z. B. Team-Performance, Time-to-Market, Risikomanagement, Fehlervorhersage und vieles mehr.