Agile software ontwikkeling wordt vaak gedreven door tests. Ontwikkelaars gebruiken Agile testmethodes zoals TDD (test-driven development) om eerst de test te schrijven. Daarna schrijven ze de code die door de test zal worden geverifieerd.
Zodra ontwikkeling en testen zijn begonnen, is communicatie erg belangrijk. Want als Agile Tester blijf je testen terwijl ontwikkelaars code schrijven. Zorgen dat iedereen weet wat er speelt is belangrijk want het niet op de hoogte zijn van de aanpassingen kan leiden tot tijdverlies of erger. Het gebeurt vaak dat ontwikkelaars ook een deel van het testen doen terwijl Agile Testers soms ook weer wat coderen, alhoewel dat minder gangbaar is.
Het is belangrijk dat zowel Agile Testers als ontwikkelaars weten wat er reeds getest is en welke defecten nog opgelost moeten worden.
Samenwerken als Agile tester
Samenwerken is van cruciaal belang als tester. Agile kan alleen goed functioneren bij een integrale aanpak waar een team wordt geformeerd en deze intensief samenwerkt. Dit team, bestaande uit ontwikkelaars, testers en andere stakeholders werken intensief en in verschillende vormen samen.
Aan welke vormen van teamwork kun je denken binnen een Agile team:
- Cross-functioneel: Elk teamlid brengt een andere set van vaardigheden in het team.
- Zelf-organiserend: Het team kan alleen uit ontwikkelaars bestaan maar idealiter is er tenminste één tester.
- Co-located: Testers zitten samen met de ontwikkelaars en de producteigenaar.
- Collaboratief: Testers werken samen met hun teamleden, andere teams, de stakeholders en de product eigenaar.
- Empowered: Technische beslissingen over ontwerp en testen worden genomen door het team als geheel (ontwikkelaars, testers, en Scrum Master), in samenwerking met de product owner en andere teams indien nodig.
- Geëngageerd: De tester is geëngageerd om het gedrag en de karakteristieken van het product in vraag te stellen en te evalueren ten opzichte van de verwachtingen en behoeften van de klanten.
- Transparant: De voortgang van ontwikkeling en testen is zichtbaar op het Agile takenbord.
- Geloofwaardig: De tester moet zorgen voor de geloofwaardigheid van de strategie voor het testen, de implementatie en de uitvoering ervan; anders zullen de stakeholders de testresultaten niet vertrouwen. Dit wordt vaak gedaan door het verstrekken van informatie aan de stakeholders over het testproces.
- Openstaan voor feedback: Feedback is een belangrijk aspect om succesvol te zijn in elk project, vooral in Agile projecten. Door open te staan voor feedback kun je leren van successen en van fouten.
- Veerkrachtig: Testen moet kunnen inspelen op veranderingen, net als alle andere activiteiten in Agile-projecten.
Deze vormen van samenwerking maximaliseren de kans op succesvol testen in projecten en vraagt een bredere kennis van de Agile Tester vaardigheden.
De eerste Sprint
In de eerste sprint vinden veel voorbereidende activiteiten plaats. Als Tester werk je samen met het team aan de volgende activiteiten tijdens de eerste sprint:
- Identificeer de scope van het project (d.w.z., de product backlog).
- Creëer een initiële systeemarchitectuur en high-level prototypes.
- Plan, schaf waar nodig aan en installeer de benodigde tools (bijv. voor test management, defect management, test automatisering en continue integratie).
- Een initiële teststrategie maken voor alle testniveaus met aandacht voor (onder andere) test scope, technische risico’s, test types en dekkingsmiddelen.
- Uitvoeren van een initiële kwaliteitsrisico analyse.
- Bepaal de definitie van “klaar” vooraf zodat het testen ook echt klaar is volgens de definitie.
- Creëer het takenbord.
- Bepaal wanneer het testen moet worden voortgezet of gestopt voordat het systeem aan de klant wordt opgeleverd.
De eerste Sprint bepaalt de richting voor wat je met het testen wilt bereiken en definieert hoe dit gedaan moet worden gedurende de sprints.
Test Planning
Aangezien testen volledig geïntegreerd is in het Agile team moet de test planning beginnen tijdens de release planningssessie en opnieuw worden bijgewerkt tijdens een sprint. Door middel van test planning en duidelijke sprints krijg je zicht op de mogelijke problemen en kun je ze voortvarend aanpakken vóór de release van je software.
Wilt u weten hoe een Software tester word? Lees onze blog hierover.