De Testdev of de Devtester: de ultieme symbiose?
Vroeger was alles heerlijk simpel: je had testers die altijd zeurden over de vele bugs van de door de developers opgeleverde software en je had developers die zeurden over de testers en hun onmogelijke eisen en gevonden issues. En daar tussenin stond een hoge muur, zodat je fijn met je eigen soortgenoten kon werken en geen last had van de andere kant.
Tegenwoordig zie je met de opkomst en het toenemende gebruik van Agile methodieken, dat deze gescheiden werelden compleet verdwijnen en dat testers en developers steeds meer schouder aan schouder samen werken aan het product. Hierdoor verdwijnen ook de grenzen tussen traditionele test activiteiten en developer activiteiten en ontstaat de "testdev" of de "devtester". Een goede zaak!
Deze overlapping en ineenschuiving van activiteiten heeft een aantal oorzaken:
- De Agile werkwijze dwingt testers en developers om nauw samen te werken in kleine teams. Hierdoor ontstaat een saamhorigheidsgevoel en een gezamenlijke verantwoordelijkheid voor het opleveren van een goed eindproduct. Dit leidt tot een betere communicatie tussen testers en developers, begrip voor elkaars werk en zelfs de bereidheid om elkaar te helpen als het op het ene vlak wat drukker is dan op het andere vlak.
- Moderne ontwikkeltechnieken gaan vaak uit van Test Driven Development (TDD), waarbij testen nauw is verweven in het hele development proces en eerst de requirements en tests worden opgesteld, voordat daadwerkelijk iets wordt ontwikkeld. In kleine Agile teams zullen testers en developers dit gezamenlijk opstellen en uitvoeren en zullen testers steeds nauwer betrokken worden bij tools die voorheen puur voor developers waren bestemd. De testers zullen hier dus ook kennis over op moeten doen, zodat ze toegevoegde waarde hebben in kleinschalige Agile projecten.
- Omdat de Agile werkwijze vaak in internet projecten wordt toegepast, zie je ook een overlapping van tooling ontstaan. Developers gebruiken specifieke unit testing tools, maar zullen ook algemenere test tools gebruiken om het eindresultaat te testen, die ook vaak door de testers worden gebruikt voor hun tests. Testers en zeker testautomatiseerders, gaan steeds meer verschillende en specifiekere test tools gebruiken om alle functionele en non-functionele requirements te testen, zoals performance tests, usability tests, browser compatibility tests, etc. Hier onstaat deels een overlap en testers en developers zullen kennis gaan delen en samenwerken.
Al deze factoren zorgen ervoor dat we op weg zijn naar een gedeeltelijke samensmelting van testers en developers: de testdev of de devtester. Natuurlijk zal altijd ruimte zijn voor specialistische testers en developers, zeker in grote projecten, maar voor de generieke testers en developers ontstaat een nieuwe en uitdagende ontwikkeling voor de deur, die zeker voor testers zeer interessant is. Testers zullen deels mee gaan ontwikkelen en developers zullen deels mee gaan testen, naar gelang de drukte in het project.
Dit vereist voor testers dat ze zich ook gaan verdiepen in ontwikkelmethodieken, frameworks en programmeertalen, zoals Java, .NET en Ruby on Rails, en ook in testtechnieken zoals Test Driven Development, Behaviour Driven Developement, Rspec en Cucumber. Daarnaast kan een traditionele testanalist zich niet meer beperken tot Excel spreadsheets en het Tmap boek, maar zal hij ook een basiskennis moeten hebben van functionele testautomatisering en performance testing.
Dit maakt het vakgebied voor de generieke tester echter zo veel leuker en uitdagender, want niet alleen blijf je jezelf altijd ontwikkelen in nieuwe technieken en werk je veel concreter mee aan het eindproduct, ook ontstaat een nieuw carrière perspectief. Want vroeger leek alles wel mooi simpel, maar als generieke tester liep je wel altijd tegen een dilemma aan: blijf ik tot in lengte van dagen testgevallen maken in Excel of ontwikkel ik me richting test coördinator of test manager? In dit huidige mooie en opwindende tijdperk wordt de rol van generieke tester misschien wel een van de belangrijkste en leukste rollen die je kunt vervullen in de testwereld.

Geschreven door John van Arkelen
Testconsultant
Testconsultant
