Opleiding: Training Unit Testing
Wil je zelf betrouwbare unit tests kunnen schrijven, zodat je bestaande code kunt aanpassen zonder dat er nieuwe bugs insluipen? In deze training leer je unit tests op te zetten, te evalueren en te verbeteren, en maak je kennis met test driven development, mocking-objecten en het testen van legacy code. Hierdoor ben je in staat om onderhoudbare tests te schrijven die de kwaliteit van je code blijvend bewaken.
Algemene omschrijving
Unit-testing is een methode om stukken code automatisch te testen op hun correcte werking. In deze training leer je die methode praktijkgericht toe te passen: je schrijft zelf unit tests, evalueert ze en verbetert ze stap voor stap. Zo voorkom je dat er nieuwe bugs insluipen wanneer je aanpassingen doet aan bestaande code. Je werkt met test driven development, zet mocking-objecten in om code te isoleren en leert onderscheid te maken tussen interaction-based en state-based testen. Daarnaast neem je het lastigste deel door: het testen van legacy code en van code die zich moeilijk laat testen. unit tests vormen bovendien vaak de basis onder een CI/CD-pipeline, waarin je code bij elke wijziging automatisch wordt getest.
De praktijkcase vormt het zwaartepunt. Op basis van alles wat je hebt geleerd, schrijf je een eigen unit-test en werk je die aan de hand van verschillende opdrachten uit tot een onderhoudbare test. Je oefent met assertions en excepties en scherpt aan waaraan een goede test voldoet.
Onze trainers zijn, naast trainer, dagelijks werkzaam op dit expertisegebied. Je mag rekenen op een training waarin we theorie en praktijk afwisselen en ingaan op vraagstukken uit jouw eigen werkpraktijk. Hierdoor ben je na afloop in staat om zelfstandig onderhoudbare unit tests te schrijven en te beoordelen.
Deze training als bedrijfstraining voor jou en je team?
Elk vraagstuk en elke situatie is anders; daarom staan tijdens een bedrijfstraining jouw organisatie en (bedrijfs)vraagstukken centraal. In goed overleg stellen we een lesprogramma samen dat volledig aansluit bij jouw (jullie!) specifieke uitdaging, wensen en dagelijkse werkpraktijk.
Programma
Tijdens de training Unit Testing komen onderstaande onderwerpen aan bod.
NB: Mocht je vragen hebben over de inhoud of deze aangepast willen zien op jouw specifieke praktijksituatie of trainingsbehoefte, bel ons dan gerust: we spreken de mogelijkheden graag met je door.
- Introductie unit-testing
-
- Doorgronden wat unit-testing is en hoe het de werking van je code automatisch controleert
- Herkennen hoe unit tests bugs voorkomen bij aanpassingen aan bestaande code
- De plaats van unit-testing binnen het ontwikkelproces bepalen
- Test Driven Development
-
- De werkwijze en gedachte achter test driven development doorgronden
- Eerst een falende test schrijven en daarna de code die hem laat slagen
- Je code herstructureren zonder de bestaande tests te breken
- Herkennen wanneer test driven development je ontwerp scherper maakt
- unit tests schrijven met assertions en excepties
-
- Verwachte uitkomsten vastleggen met assertions
- Testen hoe je code zich gedraagt bij excepties en foutsituaties
- Een test zo opzetten dat de uitkomst eenduidig slaagt of faalt
- Mocking-objecten en teststijlen
-
- Doorgronden waarvoor je mocking-objecten inzet bij het isoleren van code
- Mocking-objecten inzetten en toepassen in je tests
- Het verschil tussen interaction-based en state-based testen benoemen
- Bepalen welke teststijl bij welk vraagstuk past
- Legacy code, ontestbare code en onderhoudbare tests
-
- Bestaande legacy code alsnog van tests voorzien
- Herkennen wat code moeilijk testbaar maakt
- Moeilijk testbare code stap voor stap testbaar maken
- Bepalen waaraan een goede, onderhoudbare unit-test voldoet
- Tests zo schrijven dat je ze bij wijzigingen makkelijk mee onderhoudt
- Praktijkcase
-
- Op basis van het geleerde eigen unit tests schrijven
- De tests aan de hand van verschillende opdrachten evalueren
- De tests verbeteren tot een onderhoudbare unit-test
- Je aanpak toetsen op basis van de besproken principes
De training is praktisch en interactief van opzet, met veel ruimte voor jouw vragen en werksituatie. Je gaat aan de slag met passende praktijkvoorbeelden. Door actief te oefenen, te analyseren en te evalueren, maak je je de materie stap voor stap eigen en ervaar je hoe je een unit-test opzet, evalueert en verbetert.
Onze trainers zijn, naast trainer, dagelijks werkzaam op dit expertisegebied. Ze beschikken dus niet alleen over de meest actuele kennis, maar hebben ook essentiële praktijkervaring. Hierdoor zijn ze in staat om een waardevolle vertaalslag te maken van ‘kennis’ naar ‘toepassing binnen jouw organisatie en werksituatie’.
Doelen
Na deze training ben je in staat om:
- unit tests op te zetten die de correcte werking van je code automatisch controleren
- Test driven development toe te passen bij het ontwikkelen van nieuwe code
- Mocking-objecten in te zetten en interaction-based en state-based testen te onderscheiden
- Legacy code en moeilijk testbare code alsnog van bruikbare tests te voorzien
- Onderhoudbare unit tests te schrijven, te evalueren en te verbeteren