Your cart is currently empty!
Strafwerk
Het grote nadeel van Ruby is dat het als dynamische programmeertaal je code op veel manieren de mist in kan laten gaan. Er is immers geen compiler of type checker die je helpt. Het is daarom zaak om de code goed te testen, maar toen ik bijna anderhalf jaar geleden aan de slag ging met Ruby, voelde dat toch altijd een beetje als strafwerk. Op het moment dat ik de test schreef – achteraf – had ik mijn code immers al en ik had daar redelijk vertrouwen in, dus ik wilde liever aan de slag met nieuwe functionaliteit. En misschien wel het vervelendste: tests confronteren je met je eigen fouten.
Al gauw ging ik echter meer lezen over de testframeworks die ik gebruikte: RSpec en later ook Cucumber. De gedachte achter beide is dat ze je code documenteren door deze leesbaar te specificeren en daaruit je tests af te leiden. Behavior-driven development heet dit.
Om te beginnen met RSpec, waarmee je op unitniveau test, som je op in ’mensentaal‘ wat het betreffende onderdeel moet kunnen. Dat dwingt al na denken voordat je je code begint te schrijven. Daardoor vermijd je een groot deel van het ’gerommel‘ in je code, wat doorgaans fouten én minder mooie code oplevert.