Geregeld krijg ik deze vraag naar mijn hoofd geslingerd en als zelfbenoemd Software Test Automation Realist, heb ik daar uiteraard mijn eigen antwoord op. In de wereld van DevOps en Continuous Delivery heeft Test Automation al een voorname rol gekregen binnen de beweging die we Continuous Testing hebben genoemd. In de andere vormen van applicatieontwikkeling heeft Test Automation eveneens een vaste positie ingenomen en kan ook daar een flinke stap voorwaarts betekenen.
Test Automation of toch Automated Testing
Op internet struikelt men over artikelen die de bovenstaande woordenstrijd in meer dan 1000 woorden uiteenzetten en diverse specialisten prefereren de term Automated Testing. Mogelijk omdat het actiever klinkt, alleen beperken ze zich daarmee tot die tools welke in staat zijn manuele testgevallen geautomatiseerd uit te voeren (de zogenaamde test execution). Met Test Automation pakken we ook de applicaties mee die in staat zijn om het werk van de tester te automatiseren. Denk hierbij aan het managen van requirements, het genereren van testgevallen, het samenstellen van testscripts, het managen van de testruns, het genereren van testrapportages en het bevindingenbeheer.
One tool to rule them all
Het slagveld van het Test Automation landschap ligt bezaaid met applicaties. Volledige suites, specialistische tools, licensed applicaties, open source tooling, plug in oplossingen. En de winnaar is? Geen één èn allemaal. Het hangt namelijk af van het grote aantal factoren waarmee elke specifieke situatie te maken heeft. Iedereen vindt zijn/haar omgeving of applicatie uniek en dat is helemaal terecht. Men heeft te maken met de volwassenheid van de applicatieontwikkeling in het bedrijf, de kennis en ervaring van de beschikbare medewerkers en de tijd en de financiën die ervoor wordt vrij gemaakt.
Natuurlijk zijn er tools die door grote communities op handen gedragen worden, maar het meest gereden automodel is toch ook niet de beste?! En het land waar iedereen naar op vakantie gaat is toch ook niet het mooiste?! Objectief bekeken, zijn er zeker applicaties die het predicaat ‘best buy’ verdienen, afhankelijk van vooraf gestelde criteria. Echter, elke situatie is subjectief en dus zal er met alle kenmerken van de organisatie een weloverwogen keuze gemaakt moeten worden.
De keuze is reuze
Die keuze behoort weloverwogen gemaakt te worden op basis van goede en meervoudige informatiebronnen. Toolexperts hebben een vooroordeel, dat maakt hun immers tot expert. Toolverkopers hebben dat al helemaal, want “wij van wc-eend, ……”. In plaats van uit te zoeken wat de beste tool is, zou je eerst het antwoord op de vraag ‘Waarom willen we het testen automatiseren?’ willen hebben. Zodra dat antwoord acceptabel is stel dan de vervolgvraag ‘Wat willen we gaan automatiseren?’. Behandel de behoefte om het testen te gaan automatiseren als elk ander ontwikkeltraject binnen de organisatie, want het is niet even een kunstje dat men zich eigen maakt. Het verandert substantieel het kwaliteitsproces en als het goed en weloverwogen wordt uitgevoerd kan de return on investment enorm zijn.
Dus wat is nou Test Automation? Mits goed in beweging gebracht: een verbeterslag op de efficiëntie en effectiviteit van de applicatieontwikkeling en het beheer…… en verdraaid leuk om mee te werken!