In dit blog probeer ik de verschillende type testers te definiëren door een dag uit het leven van deze testers te schetsen.

Tommy Traditioneel

De eerste tester heet Tommy Traditioneel en werkt als testcoördinator op een project. Op weg naar het werk verbaast hij zich over het feit dat hij in de groene golf van stoplichten toch een rood stoplicht heeft gekregen. 'Wie dat getest heeft, mag zich echt geen testprofessional noemen.' Op het werk start hij de ochtend met het doornemen van het defect managementsysteem, om te beoordelen of er nog voortgang is geboekt door de ontwikkelaars op de openstaande bevindingen. Vervolgens gaat hij naar de dagstart met de (acceptatie)testers. 'Vandaag moeten we extra kritisch zijn', geeft hij de testers mee. 'Gisteren hebben we nog best een aantal fouten in de software ontdekt. Misschien moeten we nog meer testen. Ik verwacht dat er nog fouten in zitten.'

Auteur: Edwin van Loon

Edwin van Loon is testmanager bij APG. Hij legt de verbinding tussen conceptueel denken en pragmatisch handelen. Zijn motto is 'deliver higher quality within less time and effort'.

Na de dagstart loopt hij door de testspecificaties en testresultaten van de testers heen en haalt hier onnauwkeurigheden uit. 'De testers van tegenwoordig zijn ook niet meer wat ze geweest zijn', moppert hij. Vervolgens gaat hij zelf ook nog een paar uurtjes testen, vindt een aantal omissies en registreert deze als bevindingen. 'Deze software kunnen we echt niet vrijgeven. Laat die ontwikkelaars maar eerst fatsoenlijke software opleveren.'

Tussen de werkzaamheden door bekijkt hij de laatste nieuwtjes op testnieuws.nl. Aan het einde van de dag levert hij een statusrapport op aan de stakeholders en gaat hij met een voldaan gevoel naar huis. 'Tot morgen, ik heb weer veel ellende voorkomen'.

Andy Agile

De tweede tester heet Andy Agile en werkt als tester in een agile ontwikkelteam. Op weg naar het werk geniet hij van de groene golf. 'Een mooie uitvinding', mompelt hij en denkt tegelijk na over het algoritme dat erachter zit en hoe dat eventueel geoptimaliseerd kan worden. Op het werk aangekomen controleert hij meteen de resultaten van de unittesten en klikt even door om te kijken of de belangrijkste programmapaden zijn geraakt door de testen. Op een gefaalde test klikt hij door en hij geeft de oorzaak mondeling door aan de ontwikkelaar die naast hem zit. Vervolgens gaat hij samen met het team een aantal testgevallen bedenken voor de nieuwe user stories . 'Gaaf, die nieuwe agile werkwijze', denk hij. 'Nu nog de stap maken richting DevOps. Dat zou helemaal cool zijn. Software na een succesvolle unit test automatisch naar productie kunnen zetten.' Tijdens de sprintplanning van het team stelt hij voor om hier een proef mee te gaan doen.

Tussen de werkzaamheden door leest hij enkele nieuwtjes op javaworld.com en enkele test driven development practices op javacodegeeks.com. In één van de artikelen vindt hij een voorbeeld dat hij wil gaan uitproberen. Aan het einde van de dag 'commit' hij zijn ontwikkelde nieuwe unittesten en heeft hij er alle vertrouwen in dat de gewijzigde software correct gaat werken. Hij gaat met een voldaan gevoel naar huis. 'Tot morgen, we hebben weer een productieve dag achter de rug.'

Niets is goed of slecht

Twee heel verschillende testers, wat stereotypisch neergezet natuurlijk, maar beide personages zul je best herkennen vanuit de praktijk. Ik verwacht dat de agile-aanhangers onder ons een voorkeur hebben voor Andy Agile. De agile puristen onder ons zullen zelfs vinden dat het werk van Andy Agile ook door ontwikkelaars kan gebeuren.

Volgens mij leveren beide testers hun meerwaarde op het gebied van testen. Andy Agile heeft de zogenaamde 'Shift left' gemaakt. Dit is een term die in combinatie met Agile en DevOps veel gebruikt wordt. Om de benodigde snelheden van software ontwikkelen en distribueren te kunnen behalen dienen testers zo vroeg mogelijk te beginnen. Hierbij heeft het de voorkeur dat de testers al actief betrokken worden bij de unittesten. Die werden voorheen door de ontwikkelaars uitgevoerd. Bij de traditionele werkwijze wordt aan het eind van het ontwikkeltraject getest (de rechterkant). Dit biedt de mogelijkheid om aanpassingen in een representatieve omgeving te testen in combinatie met alle overige wijzigingen in het systeem of zelfs in een keten van systemen.

Andy Agile is een echte teamplayer, waardoor het team snel kan zijn. Een traditionele tester zou echter in de paar zinnen die ik heb opgesomd al zeker twee risico's zien. Bijvoorbeeld: Andy geeft mondeling een fout aan een ontwikkelaar door en gaat daarna door met andere werkzaamheden. Hier is een kans aanwezig dat de fout vergeten wordt en daarmee niet wordt opgepakt.

Testers zijn van huis uit de criticasters binnen ontwikkelteams en hebben de gave om te doemdenken en daarmee fouten te vinden. Hiermee leveren ze een belangrijke bijdrage en ze zijn het kwaliteitsgeweten van een team.

De ideale combinatie: Kwint Kwagile

De moderne tester is in mijn ogen een combinatie tussen Andy en Tommy : Kwint Kwagile. Een persoon die kwaliteit door zijn aderen heeft lopen en positief kritisch is. Hij (of zij) is in staat om te doemdenken op een realistische manier en vindt de juiste balans tussen kwaliteit en snelheid. Tegelijk is deze persoon een goede teamplayer en bezit basisvaardigheden op het gebied van ontwikkelen.