Auteur: Bas Dijkstra ● bas@ontestautomation.com
Redactie: Henk Johan Kwakkel
‘Is testautomatisering eigenlijk een doel op zich, of alleen een middel om een ander doel te bereiken?‘
Als je deze vraag aan testers stelt, zul je waarschijnlijk meestal het antwoord: ‘het is een middel’, krijgen. En daar ben ik het zelf behoorlijk mee eens. Als je mij vraagt om een definitie van testautomatisering, zeg ik waarschijnlijk iets wat lijkt op:
‘Het gebruik van tools voor het efficiënter uitvoeren van specifieke testactiviteiten‘.
Tools zijn voor mij een middel om testers (en development teams in het algemeen) het leven wat makkelijker te maken. Automatiseren van handelingen die onderdeel zijn van testen kan sneller informatie en feedback geven, waardoor teams sneller inzicht in kwaliteit krijgen en waardoor ze uiteindelijk sneller en vaker nieuwe releases naar productie kunnen brengen.
En natuurlijk, de markt vraagt om steeds kortcyclischer werken, steeds vaker een nieuwe release en meer wendbare teams en organisaties. Testautomatisering is één van de dingen die daarbij kan helpen. Maar ik krijg, wanneer ik met testers, ontwikkelaars, teams en organisaties praat (en als trainer spreek je veel verschillende mensen) de indruk dat het af en toe een beetje doorslaat. Dat testautomatisering een doel op zich aan het worden is en niet meer een middel om een ander, hoger doel te bereiken.
Hier zijn zomaar een paar voorbeelden:
* De, uitdrukkelijke of impliciete, wens om ‘al het testwerk te automatiseren’. Als testers weten wij natuurlijk dat dat helemaal niet mogelijk is, maar er zijn helaas nog steeds veel mensen waar we in ons werk mee te maken hebben die er nog steeds van overtuigd zijn dat testautomatisering de oplossing voor alle testproblemen (te duur, duurt te lang, …) is. Dit uit zich vaak in automatiseren om het automatiseren, in plaats van eerst eens goed te kijken of al die moeite die er in wordt gestoken wel iets oplevert.
* Sowieso, de vaak nutteloze focus op dekking als het gaat over testautomatisering. ‘Wij hebben 80% van onze tests geautomatiseerd!’ (hoe dan? hoe meet je dat?), of ‘wij hebben 99% unit test coverage’ (en wat is de kwaliteit van diezelfde unit tests dan? 99% coverage kan prima zonder ook maar een enkele assertion…). Zodra je gaat praten in termen van dekking van testautomatisering is de valkuil om automatisering te zien als doel in plaats van als middel om een ander, hoger doel mogelijk te maken gevaarlijk dichtbij.
* Veel testers die ik spreek, willen beter worden in en meer ervaring opdoen met testautomatisering. Dat komt goed uit, mensen daarin trainen is mijn werk… Maar even serieus, bijna iedere tester die ik spreek die deze wens uit, begint meteen over een specifieke tool of taal: ik wil meer leren over Selenium (of Postman, of JMeter, of…), of: ik wil beter leren programmeren in Java (of C#, of Python, of…). En dat is een goed startpunt, maar wat diezelfde testers vaak vergeten is dat er veel meer komt kijken bij een goede (of in ieder geval betere) testautomatiseerder worden. Ik heb mijn mening daarover overigens recent in een gratis e-book gedeeld, zie: https://huddle.eurostarsoftwaretesting.com/resources/test-automation/a-test-automation-learning-path/.
En, eerlijk gezegd, niet iedere tester is in de wieg gelegd om een goede testautomatiseerder te worden. Is dat erg? Helemaal niet. Er zijn genoeg andere manieren waarop testers waardevol kunnen zijn voor een team, project en organisatie. Play to your strengths, zoals dat in goed Nederlands ook wel wordt gezegd.
Om dit punt nog eens wat kracht bij zetten als het gaat over testautomatisering, in trainingen of bij een klant, geef ik meestal aan dat er nog nooit iemand naar mij toe is gekomen met een zak geld en de vraag ‘mag ik van u 5 kilo testautomatisering?’. Wat een klant uiteindelijk wil, en dat is ook waar we het vaker over zouden moeten hebben, is datgene wat testautomatisering mogelijk maakt. Meer testen in dezelfde tijd. Snellere feedback. Bepaalde checks eerder en vaker uitvoeren. Dat is het doel. Testautomatisering is één van de middelen om dat voor elkaar te krijgen. Niet meer (maar ook niet minder) dan dat.
Wat is jouw doel?