Testautomatisering krijgt binnen organisaties een steeds prominentere rol. De belangrijkste overweging om testautomatisering toe te passen komt vaak voort uit de behoefte om tijd, kosten en resources te besparen. Maar is testautomatisering hier werkelijk de oplossing voor?
De praktijkervaring betreffend de verkorting van doorlooptijd is dat je teleurgesteld kan worden, simpelweg omdat de projectplanning dit niet meer toelaat. Naast het aanpassen en inrichten van testautomatiserings-processen, is bovendien de implementatie van testautomatiseringstools noodzakelijk. Deze implementatie gaat gepaard met kosten voor software, hardware, inrichting en beheer, waardoor de beoogde besparing op korte termijn meestal niet wordt gerealiseerd. Er is echter een ander effect van de toepassing van testautomatisering, die een andere kijk op de zaak geeft, vooral op de lange termijn…
Je wordt als organisatie immers in staat gesteld om met testautomatisering meer diepgang in testen aan te brengen en meer testsoorten uit te voeren. Dit resulteert in minder software fouten, dus minder herstel kosten en afnemende kans op imago schade. Een aantal praktijkervaringen:
Organisaties ontlenen hun bestaansrecht tegenwoordig voor een grootdeel aan de bedrijfskritische software. Het is dan ook van groot belang dat bij de implementatie van nieuwe functies de bestaande functionaliteit blijft werken. Toch zie je in de praktijk dat er wegens tijdsgebrek voor wordt gekozen om de regressietest over te slaan, terwijl deze test juist aan moet tonen dat bestaande functionaliteit blijft werken.
Daarnaast zie je vaak dat tijdens de testperiode de focus over het algemeen ligt op nieuwe functionaliteit en worden de load- en stresstesten impliciet in productie getest. Reden hiervoor is dat deze test handmatig redelijker wijze niet uit te voeren is, waarbij ik bovendien vaak het excuus hoor dat het vergroten van geheugen of opslag capaciteit relatief goedkoop is! Mijn ervaring is echter dat het uitbreiden van hardware niet altijd de oplossing is voor performance problemen.
Regressie-, load- er stresstesten zijn dus voorbeelden waarvoor testautomatisering uitkomst kan bieden. Testautomatisering maakt het mogelijk om(regressie) testen gepland, herhaalbaar en volledig uit te voeren. In het geval van load- en stresstesten maakt testautomatisering het mogelijk om grote hoeveelheden gebruikershandelingen en/of transacties te simuleren.
Implementatie van testautomatisering vraagt om een bedrijfsbreed gedragen strategie en investering met een gedegen aanpak waarbij een grondige analyse, management commitment en gekwalificeerde medewerkers niet mogen ontbreken. Alleen dan is het mogelijk om de lange termijn doelstelling te realiseren, en testautomatisering rendabel en succesvol te maken.