Test-Driven Development
Test-Driven Development
Du har sikkert hørt om Test-Driven Development (TDD). TDD er relateret til test-first metoden fra Extreme Programming. TDD er en udviklingsteknik, hvor man skriver en specifikation der eksemplificerer, hvordan koden skal opføre sig, før man skriver selve implementeringen. Udviklingscyklussen følger denne model:

Image created by http://en.wikipedia.org/wiki/User:Excirial
Der er mange fordele ved TDD. De væsentligste er (ifølge vores egne erfaringer):
- Dine specifikationer beviser, at din kode faktisk fungerer efter hensigten
- Dine specifikationer fungerer som en low-level regression suite
- Du kan forbedre dit design uden at ødelægge det
- TDD demonstrerer konstant fremgang
- Specifikationerne fungerer som eksempler på, hvordan koden skal anvendes
- Du bliver tvunget til at tænke design, før du skriver koden
- Det bliver væsentligt nemmere og hurtigere at finde og rette bugs
- Det er mere produktivt, end hvis du ikke skriver specifikationer
- Det fremmer selvtilliden og troen på, at ændringer i kildekoden kan foretages, uden at der senere dukker uheldige sideeffekter op
- Det fremmer godt design, fordi dårligt design er vanskeligt at teste
- Det øger udviklerens fokus på at lave et godt design fra API brugerens perspektiv
- Det øger fokus på, hvad det er, du forsøger at kode, og ikke hvordan du kan kode det
- Det tilskynder dig til kun at lave de funktioner, der faktisk er behov for, i stedet for at lave funktioner der måske bliver behov for senere
Undervisningen i dette kursus er bygget op om korte teori sessioner og tager udgangspunkt i udviklingen af et mindre, men realistisk system. Vi udvikler på dette system igennem hele dagen vha. TDD. Der vil være masser af eksempler og du kommer til at skrive en masse specifikationer på egen hånd eller med en makker.
Forudsætninger
For at få mest muligt ud af kurset bør du have mindst 1-2 års erhvervserfaring som software udvikler. Eksemplerne bliver skrevet i C# men kan nemt forstås af Java, Ruby og C++ udviklere.
Formål
Formålet med kurset er at klæde deltageren på til at udvikle bedre software
Mål
- Deltageren kan forklare TDD metoden og hvorfor den virker
- Deltageren kan forklare hvilke fordele man opnår ved at bruge TDD
- Deltageren kan forklare hvilke design træk et TDD udviklet system som oftest har
- Deltageren kan forklare og skrive specifikationer på egen hånd
- Deltageren kan anvende NUnit som test framework i TDD
- Deltageren får kendskab til mocking
Varighed
1 dag, kl. 08.30 – 16.30
Sted
Scheelsminde - Scheelsmindevej 35 - DK-9100 Aalborg
Pris
Kr. 3.000,- ekskl. moms