Wat is Agile testen en wat is de rol van een Agile Tester?
Zeker in de IT is er vrijwel geen functieprofiel waarin het woord “Agile” niet wordt genoemd. Maar wat betekent Agile nou eigenlijk? En wat wordt er dan bij Heeyoo gevraagd van een Agile (functioneel) Tester?

Agile testen
Met het gebruik van verschillende Agile ontwikkelmethoden, stijgt ook de vraag naar Agile testen. Testen in een Agile ontwikkelteam betekent niet alleen dat testtechnieken moeten worden aangepast, maar vraagt ook een andere mindset van de Tester. In een meer traditionele ontwikkelorganisatie, kan het voorkomen dat het testen de software release cycle vertraagt. Ontwikkelaars en Testers komen aan het einde van de ontwikkelperiode soms lijnrecht tegenover elkaar te staan. De business wacht ondertussen op de software.
Software testen in een Agile omgeving
De Agile ontwikkelmethode brengt Testers en Ontwikkelaars dichter bij elkaar, sterker nog, ze werken intensief samen met een snelle oplevering van goede software als resultaat. De Ontwikkelaar en Tester moeten hiervoor wel hun manier van werken aanpassen. Omdat testen een continu proces is geworden tijdens het ontwikkelen van de software, is er weinig tijd over voor het schrijven van uitgebreide testscripts. Exploratory testing is dan ook een voor de hand liggende en veel gebruikte testtechniek binnen de Agile werkwijze.
Hoeft een Tester dan niets meer te documenteren? Jazeker wel! Het team is verantwoordelijk voor de kwaliteit van de software en de Tester speelt hierin een belangrijke rol. Niet alleen controleert hij of de software voldoet aan de acceptatiecriteria van de business, de Tester is met zijn expertise grotendeels verantwoordelijk voor het goedkeuren van de opgeleverde software. Met andere woorden; de Tester bepaalt of de software goed genoeg is om te worden opgeleverd. Complexere software vraagt daarom vaak om complexere testtechnieken en in deze gevallen doet de Tester er verstandig aan toch tijd te reserveren voor het uitschrijven van testscenario’s.
Voordelen testscripts
Het schrijven van testscripts kan in specifieke gevallen nog een voordeel hebben. In een Agile team werken vaak meerdere ontwikkelaars en slechts één Tester. Software snel opleveren kan alleen als alle software ook daadwerkelijk getest is. In een Agile ontwikkelteam betekent dit dat Ontwikkelaars soms moeten bijspringen in het testproces. Door het schrijven van leesbare testscripts borg je als Tester de kwaliteit van je werk. De Tester schrijft de testscripts en een ontwikkelaar kan het testscript vervolgens uitvoeren.
Testautomatisering als houvast
In een Agile ontwikkelomgeving waarin releases elkaar kort opvolgen, kun je niet meer om testautomation heen. Testautomation wordt steeds toegankelijker en kan ook een houvast zijn voor de business. In een omgeving waarin om de week software naar productie wordt gebracht, is het van groot belang een volledig geautomatiseerde regressietest op te bouwen.
Het schrijven van ten minste één geautomatiseerde test voor elke user story, zou in elke Agile ontwikkelmethode onderdeel moeten zijn van de ‘Definition of Done’. Als Tester ben je verantwoordelijk voor het onderhouden van geschreven scripts voor testautomation, Ontwikkelaars zijn mede verantwoordelijk voor het schrijven van de initiële testscripts.
Complexe software waarvan de releases elkaar in rap tempo opvolgen, zorgen er vaak voor dat reeds bestaande testscripts omvallen of niet meer valide zijn. Het onderhoud van testautomation wordt hierdoor vaak als een last gezien. Door ook de business te betrekken bij testautomation, en gebruik te maken van geautomatiseerde regressietests, kun je draagvlak creëren en kan er tijd worden vrijgemaakt voor het onderhouden van testscripts. De business kan gebruik maken van geautomatiseerde testscripts tijdens de acceptatiefase van de release-cycle. Dit neemt niet alleen veel handmatig testwerk bij de business uit handen, maar zorgt ook voor een kortere release-cycle van de software.
De rol van de Agile Tester
Het Engelse woord Agile betekent: behendig, lenig. Als Tester in een Agile omgeving is dit precies wat er van je wordt verwacht. Door korte lijntjes te houden met ontwikkelaars kun je er als Agile Tester voor zorgen dat fouten of bugs in een vroeg stadium ontdekt worden. En door nauw contact met de business kun je garanderen dat de software die wordt opgeleverd ook voldoet aan de eisen die gesteld zijn.
Als spil binnen het ontwikkelteam moet een Agile Tester ervoor zorgen dat hij het ontwikkelproces ondersteunt en niet stagneert. Het durven nemen van beslissingen en het snel kunnen handelen zijn typisch voor een Agile Tester. De rol van Tester zal binnen de Agile werkwijze de komende jaren steeds meer worden verspreid over verschillende functies. De meerwaarde van de Agile Tester is om vinger aan de pols te houden gedurende alle fases van de softwareontwikkeling. Alleen dan kun je de kwaliteit van de software waarborgen.







