Test-driven- Development für Senior-DevsOliver Klee, 2023-xx@[email protected] | [email protected]
View Slide
Unit-Tests?
AutomatisierteTests sind schnell
Sicher sein, dass derCode das Richtige tut
Verhindern, dass deineÄnderungen etwas andereskaputt machen
Verhindern,dass andere Leutedeinen Code kaputtmachen
Auch bei komplexen Projekten nichts kaputt machen
Baue ein Sicherheitsnetzfürs Refactoringoder für TYPO3-Updates
Verbesseredie Strukturdes Codes
Finde die Ursache von Bugs
Grün fühlt sich gut an!
Lasst uns ein paarBegriffe klarstellen
Die zwei Programmier-Modisauberhacky
4 Test-PhasenSetup (aufbauen)setUp() Code in der TestmethodeExercise (ausführen) MethodenaufrufVerify (prüfen) assert…()Teardown (abbauen) tearDown()
Schreibe zuerst den TestTest schreibenCode schreibenrefactoren
Wozu führt TDD?höhereCoverageminimaler Codeerst denken,dann codenTests testen,was der Codemachen soll (statt, was ertatsächlich tut)fokussiertesCodensauberereCode-Struktur
Test-Namen
Benutze aussagekräftigeTest-NamenclassCanBeInstantiatedsetTitleSetsTitlesetSizeWithZeroThrowsExceptionhasTitleForEmptyTitleReturnsFalseBenenne dasVerhalten.Nenne dieVorbedingungen.Nenne dieMethode.Benutze nicht„works“ oder„correctly“.measureFrubbleWorksCorrectly