Browse Source

Update Lerntagebuch für KW 2

master fetched-on-2024-01-14
fdai7755 12 months ago
parent
commit
68e31420c7
  1. 20
      Lerntagebuch.md

20
Lerntagebuch.md

@ -127,6 +127,26 @@ Im Fokus meiner Erkenntnisse standen die UnitTests und ihre Bedeutung im Entwick
### Wiederholung
UnitTests sind integraler Bestandteil der Entwicklungspraxis. Durch ihre frühzeitige Ausführung im Prozess bieten sie nicht nur schnelle Rückmeldung, sondern sind auch unabhängig, wiederholbar, selbstbewertend, zeitnah, gut lesbar und verhindern ungewollte Änderungen am Code. Durch die Einhaltung von Prinzipien wie Fast, Independent, Repeatable, Selfevaluating, Timely, Readable, Trustworthy und Maintainable gewährleisten sie eine effektive und effiziente Testautomatisierung.
---
## SU n (09.01.2024)
### Lernziel
Ziel war es, die Grundprinzipien des TestDriven Developments (TDD) zu verstehen. Dabei Lag der Schwerpunktinsbesondere bei der Bedeutung von TDD, die Auswahl der zu automatisierenden Tests und das Vorgehen bei der Entwicklung.
### Erkenntnis
Wie schreibt man einen guten UnitTest?
Ein guter UnitTest ist schnell, unabhängig, wiederholbar, selbstauswertend, zeitnah, lesbar, vertrauenswürdig und wartbar. Diese Eigenschaften gewährleisten effiziente und zuverlässige Tests während des Entwicklungsprozesses.
Technisch gesehen muss ein vertrauenswürdiger Test sicherstellen, dass der Produktivcode tatsächlich ausgeführt wird und dass ein Test nur aus dem richtigen Grund fehlschlägt.
Die Zeitlichkeit in TDD manifestiert sich in verschiedenen Ansätzen: Code-first, bei dem Tests nach dem zu testenden Code geschrieben werden; Test-first, bei dem Tests vor dem zu testenden Code entstehen; und TDD, bei dem Test und verifizierter Code gleichzeitig entwickelt werden.
Die Testabdeckung wird oft als KPI missbraucht, ist jedoch entscheidend für die Beurteilung der Vertrauenswürdigkeit des Testareals. TDD führt typischerweise zu einer hohen Testabdeckung, die jedoch realistisch gesehen bei 70% bis 90% liegt. Anforderungsabdeckung kann jedoch mit TDD bis zu 100% erreicht werden.
### Wiederholung
Warum TDD? Es fördert robuste Softwareentwicklung durch die automatisierte Erstellung von Tests. Dabei werden Tests für Funktionen mit hoher Häufigkeit, Anzahl, Kritikalität und Stabilität priorisiert.
---
## SU n (*.1*.2023)

Loading…
Cancel
Save