top of page
Foto van schrijverMarc Koper

De 'waar begin ik met testautomatisering' handleiding.

Bijgewerkt op: 7 nov 2023


Wij worden regelmatig gevraagd te helpen bij het opzetten of verbeteren van testautomatisering in een Agile omgeving bij een klant. En hoeveel ervaring je ook hebt, wat je opdracht ook precies inhoudt en in welk team je ook terechtkomt, het is altijd even zoeken waar te beginnen. Onderstaand stappenplan ondersteunt hierbij.


PerformanceArchitecten organiseert veel kennissessies. Zo houden we bijvoorbeeld elke maand een ‘kennismiddag’, waarbij we ruim de tijd nemen voor discussies, om kennis te delen, in een nieuwe tool te duiken, best practices uit te werken etc. De laatste kennismiddag hebben we onder andere met het testautomatiseringsteam besproken hoe te beginnen met een testautomatiseringsklus in een Agile omgeving. Doe er je voordeel mee!


1. Creëer overzicht.

We beginnen met het creëren van overzicht. Zorg dat je duidelijk krijgt hoe je omgeving eruit ziet. Breng hiervoor in kaart wie je stakeholders zijn (organisatie), hoe de architectuur er hoogover uit ziet (de techniek) en wat de meest belangrijke functionaliteit is in het product.


Wanneer je dit verzameld hebt, documenteer je dit overzichtelijk en teken je dit in maximaal een paar a-4 tjes (praatplaten).


2. Toets de informatie en manage de verwachtingen

De volgende stap is om met je praatplaten op zak, jouw beeld van de organisatie, techniek en functionaliteit te toetsen met de stakeholders (PO, Scrummaster, team en de business). Je zal zien dat zij altijd opbouwende kritiek hebben op jouw beeld van de organisatie. Deze fase is erg belangrijk omdat je a: Heel duidelijk ziet of er miscommunicaties bestaan in de organisatie en b: Wat de verwachtingen zijn richting jou, of deze realistisch zijn en wie je belangrijkste sponsoren en/of bedreigingen zijn.


3. Bepaal het risico

Zorg dat je vervolgens goed scherp krijgt wat voor de organisatie en jouw stakeholders de belangrijkste risico’s zijn. Wees hier kritisch op jezelf en je omgeving. Vaak zie je dat in eerste instantie ‘alles kritiek is en alles uitvoerig getest moet worden’. Men is niet snel geneigd om aan te geven wat de minder kritische functionaliteit is, omdat men dan in de veronderstelling is dat het vergeten gaat worden. Bedenk ook nogmaals dat risico = het product van kans en impact (K x I). Soms wordt er uitvoerig gekeken naar zaken met hoge impact terwijl de kans dat het voorkomt minimaal is en vice versa. Mocht je hier niet uitkomen kijk dan eens naar een Product Risico Analyse.


4. Bepaal de benodigde inspanning om het te automatiseren

Maak voor jezelf duidelijk wat er al is (tooling, test omgevingen, kennis, etc.) Duik ook eens in de verschillende testen en check of de ontwikkelaars al goede unittesten schrijven, hoe de systeem testen gedaan worden en of er integratietesten zijn. Check hierbij ook of er elders in de organisatie in een soortgelijke omgeving wordt gewerkt (wat hebben ze daar liggen). Om tot een goede, evenwichtige en efficiënte testbasis te komen, is het goed om over ‘het bugfilter‘ en/of over het belang van unittesten te lezen.


Kijk vervolgens waar en hoe je de testen in de pipeline kan hangen.


5. Wat is prio één, waar begin ik mee, op basis van punt 2, 3 en 4.

Nu is het tijd om te bepalen waar te beginnen. Hiervoor gebruik je het overzicht uit stap 1 en de informatie uit stap 2, 3 en 4. Het is hierbij belangrijk om een objectieve afweging te maken tussen waar willen je stakeholders dat je begint, waar zou je moeten beginnen wanneer je de risico’s in acht neemt en waar je het makkelijkst vooruitgang kan boeken. Wees pro-actief bij deze stap. Het zou weleens nodig kunnen zijn om je overtuigingskracht aan te spreken.


6. Zorg voor commitment van het team

Wanneer je aan de slag gaat is het zaak om het team te betrekken. Doe dit door duidelijk zichtbaar te maken waar je mee bezig bent en wat de meerwaarde is voor het team. Zorg hierbij dat je kleine porties werk maakt, zodat je vaak wat op kan leveren. Zorg daarnaast ook dat je kennis deelt met je collega’s. Multi-Disciplinair is niet alleen een buzz word, het gaat jou en het team echt helpen om structureel stappen te zetten.


Bedenk hierbij dat de testautomatisering onderdeel moet zijn van het product/project. Zo is het onderhoud eenvoudig, creëer je korte feedbackloops en is de herbruikbaarheid van je testen groot.


Conclusie

Bovenstaand stappenplan is een goed handvat om in een Agile omgeving aan de slag te gaan met testautomatisering. Een Agile Test Strategie is dan ook meer een werkwijze dan een statisch document wat je opvolgt. Testen is geen doel op zich. We doen het zodat we snel feedback krijgen op en vertrouwen hebben in de kwaliteit van het product!


Loop jij hier ook weleens tegenaan, of pak jij het op een heel andere manier aan? We zijn benieuwd naar je reactie!! In de toekomst ook op de hoogte blijven? Volg ons dan nu op LinkedIn.

5 weergaven0 opmerkingen

Recente blogposts

Alles weergeven

testRigor

Comments


bottom of page