Ik gebruik nu al een maar dan een jaar (ik denk intussen wel 2) unit tests bij mijn software en de laatste tijd maak ik er steeds intensiever gebruik van. Je bent in het begin even bezig om ze op te zetten (vooral in oudere systemen waar het niet van het begin af aan is gebruikt kost het veel werk zonder direct resultaat), maar als je het een beetje bij houd dan valt het gelukkig mee.
Het grootste voordeel dat JUnit mij geeft is vertrouwen in mijn software. Iedereen maakt fouten en volledige correctheidsbewijzen opstellen voor software is geen optie omdat de software dan onbetaalbaar gaat worden. Daarnaast heb je natuurlijk in veel kortere tijd een bug gespot dan de tradionele manier: zelf proberen. Verder heb ik de unit tests gekoppeld aan mijn buildscript : ANT, zodat ik automatisch alle tests kan uitvoeren (en na afloop zo`n fijne build succesfull op het scherm krijg die je niet krijgt te zijn bij een fout in je unit tests).
Ik zou dus graag willen wie er nog meer unit tests gebruikt in zijn software, en hoever je ermee gaat.
Voor het geval mensen niet weten wat het niet is:
Een unit test is testcode waarmee je kan controleren of je software ook doet wat het moet doen. Voor een java versie kan je kijken naar JUnit en voor een .NET version kan je kijken naar: NUnit
De java mensen kunnen eventueel ook nog even kijken naar
Clover, waarmee je kan zien welk gedeelte van de software door de unit tests is getest. Op zich is het een handige tool, maar ik heb er zo mijn twijfels over. Maar je moet een reeks testen schrijven voor een bepaald stuk functionaliteit, dus het komt erop neer dat je meerdere keren dezelfde methodes moet aanroepen. Clover kan niet controleren of jij wel de noodzakelijke combinaties hebt geprobeerd, en hij vind 1 combinatie al goed om te zien of de code ook ge-execute is.
[edit]
Binnen de XP stroming, is het Unit testen een must. Binnen zo`n stroming ontstaan weer allemaal nieuwe substromingen en een daarvan is Test Driven Development. Hierbij ga je eerst je tests schrijven, en daarna pas de code implementeren. Deze manier van aanpak heeft als voordeel dat je beter gaat nadenken over wat je code moet gaan doen, en dat natuurlijk je tests altijd geschreven worden. Gelukkig zeggen ze niet dat dit de enigste manier van werken is, maar in sommige gevallen kan het heel handig zijn. De techniek pas ik zo nu en dan ook toe. Voor mijn parsers bv schrijf ik eerst de 'rotte' file die geparst moet worden, en daarna verwerk ik het pas in de parser.
Het grootste voordeel dat JUnit mij geeft is vertrouwen in mijn software. Iedereen maakt fouten en volledige correctheidsbewijzen opstellen voor software is geen optie omdat de software dan onbetaalbaar gaat worden. Daarnaast heb je natuurlijk in veel kortere tijd een bug gespot dan de tradionele manier: zelf proberen. Verder heb ik de unit tests gekoppeld aan mijn buildscript : ANT, zodat ik automatisch alle tests kan uitvoeren (en na afloop zo`n fijne build succesfull op het scherm krijg die je niet krijgt te zijn bij een fout in je unit tests).
Ik zou dus graag willen wie er nog meer unit tests gebruikt in zijn software, en hoever je ermee gaat.
Voor het geval mensen niet weten wat het niet is:
Een unit test is testcode waarmee je kan controleren of je software ook doet wat het moet doen. Voor een java versie kan je kijken naar JUnit en voor een .NET version kan je kijken naar: NUnit
De java mensen kunnen eventueel ook nog even kijken naar
Clover, waarmee je kan zien welk gedeelte van de software door de unit tests is getest. Op zich is het een handige tool, maar ik heb er zo mijn twijfels over. Maar je moet een reeks testen schrijven voor een bepaald stuk functionaliteit, dus het komt erop neer dat je meerdere keren dezelfde methodes moet aanroepen. Clover kan niet controleren of jij wel de noodzakelijke combinaties hebt geprobeerd, en hij vind 1 combinatie al goed om te zien of de code ook ge-execute is.
[edit]
Binnen de XP stroming, is het Unit testen een must. Binnen zo`n stroming ontstaan weer allemaal nieuwe substromingen en een daarvan is Test Driven Development. Hierbij ga je eerst je tests schrijven, en daarna pas de code implementeren. Deze manier van aanpak heeft als voordeel dat je beter gaat nadenken over wat je code moet gaan doen, en dat natuurlijk je tests altijd geschreven worden. Gelukkig zeggen ze niet dat dit de enigste manier van werken is, maar in sommige gevallen kan het heel handig zijn. De techniek pas ik zo nu en dan ook toe. Voor mijn parsers bv schrijf ik eerst de 'rotte' file die geparst moet worden, en daarna verwerk ik het pas in de parser.
[ Voor 23% gewijzigd door Alarmnummer op 13-10-2003 11:40 ]