Trendsz, Testautomatisering, Tooling

Met de komst en het toenemend gebruik van systemen die Artificial Intelligence (AI) gebruiken, zullen de werkzaamheden en de rol van de tester op verschillende vlakken veranderen. In de toekomst zullen testtools die gebruik maken van AI steeds meer werk uit handen nemen van de tester. Betekent dit dat de rol van een traditionele tester overbodig wordt? In het eerste deel van mijn blog heb ik in kaart gebracht welke testtools gebruik maken van AI. In deze blog wil ik ingaan op de impact van deze tools op het werk van een tester. Dit doe ik aan de hand van de drie pijlers van onze Quality Infected Team visie.

Quality Infected Teams

Testen, en daarmee de (mogelijke) inzet van testtools, is nooit een doel op zich. Het is een middel om tot kwalitatief uitstekende software te komen. Bij Bartosz geloven we in Quality Infected Teams. Dit zijn teams die er alles aan doen om kwaliteit te leveren. Dat gaat veel verder dan testen alleen. Testers spelen een cruciale rol in de reis die teams maken om Quality Infected te worden. Een Quality Infected Team kent drie aandachtsgebieden: whole team approach, fast feedback en exploration. Aan de hand van deze drie pijlers wil ik kijken naar hoe AI tools de tester helpen en waar de tester nieuwe activiteiten kan ontplooien die het team helpt bij het leveren van kwaliteit.

Niveau 1 & 2 – Testrigor & Applitools

Zoals ook in mijn vorige blog kijk ik ook nu weer naar de niveaus van AI en het gebruik daarvan in testtools. Hoe helpen deze tools de tester? Op niveau 1 worden een deel van de controles die je wilt uitvoeren geschreven en er worden op basis van de structuur van de applicatie testscenario’s gegenereerd. Niveau 2 helpt je om je testresultaten makkelijker te valideren omdat de resultaten gegroepeerd worden op type, denk daarbij aan het voorbeeld van de knoppen op de pagina’s.

Wanneer we kijken naar de pijler whole team approach dan dragen tools van niveau 1 en 2 niet bijzonder veel bij aan het creëren van een shared understanding. Waar deze tools al wel wat meerwaarde bewijzen, ten opzichte van traditionele testtools, is op het gebied van fast feedback en exploration. Beide tools maken het automatiseren van je testen makkelijker waardoor het opzetten van een fast feedback loop eenvoudiger wordt. Op het gebied van exploration helpt alleen testrigor je een flinke stap vooruit doordat de tool je applicatie scant en allerlei mogelijke testscenario’s genereert en zo mogelijk paden door je applicatie blootlegt waaraan eerder nog niet gedacht was. Nadeel is dat het uitvoeren van zoveel testen veel tijd in beslag neemt waardoor je deze het beste s ’avonds of s ’nachts kunt uitvoeren.

“Ik voorzie niet dat de rol van een tester overbodig gaat worden, wel zullen accenten gaan verschuiven.”

Niveau 3 – MABL

Conditional AI automation, niveau 3, helpt je met het onderhoud van de testscenario’s omdat je na het aanpassen van de structuur van de website, zoals in het voorbeeld van de productcategorie, zelf de testen niet aan hoeft te passen. Bovendien voert de tool in toenemende mate controles uit gebaseerd op wat het geleerd heeft van de applicatie.

Op het gebied van whole team approach voegt een niveau 3 tool ook nog niet veel toe. Bij het realiseren van fast feedback helpt een tool als MABL omdat deze tool je eenvoudig zelf plannen laat samenstellen die of periodiek of bij elke deploy draaien. Het niveau van controle dat je kunt uitoefenen is gedetailleerd en dus kun je heel eenvoudig aanpassen aan de gewenste feedback loop. Omdat MABL leert van elke uitgevoerde test en zelf testen kan repareren worden de testen stabieler en dat geeft de tester meer tijd om zelf op verkenning (exploration) uit te gaan.

Niveau 4 – appvance AI

Naast dat een tool van niveau 4 de tester helpt bij het genereren en onderhouden van de testscenario’s omdat het deze intelligent aanpast aan veranderde omstandigheden zoals het veranderde bestelproces, kan het ook gebruikt worden om de testen te baseren op echte acties van klanten. Op deze manier kan de fast feedback geoptimaliseerd worden omdat deze feedback gelijk input levert voor de testen. Daarnaast helpt het met exploration omdat we manieren zien waarop gebruikers de applicatie gebruiken waar eerder misschien niet aan gedacht was en deze informatie kan de tester ook gebruiken om andere scenario’s te bedenken.

Dat we via de testen zien wat de applicatie echt doet en hoe klanten er mee omgaan heeft nog een ander voordeel. Het helpt je namelijk bij het opstellen van documentatie. Jaren geleden kwam het nog regelmatig voor dat applicaties zonder enige vorm van documentatie of verouderde documentatie in beheer genomen (moesten) worden. De ontvangende partij was dan heel veel tijd kwijt met het krijgen van inzicht in hoe de applicatie werkte en was vaak afhankelijk van de beelden die bij de andere partij leefden over wat de applicatie deed om er vervolgens vaak achteraf achter te komen dat zaken toch anders lagen. Op deze manier kan een testtool helpen bij het creëren van een shared understanding en een waardevolle bijdrage leveren aan de whole team approach.

Met de komst van testtools met High AI automation ontstaan er ook nieuwe gebieden waar de tester zijn toegevoegde waarde kan laten zien. Op dit moment wordt de applicatie logging vaak gezien als eindpunt, nu wordt het voor de testen het startpunt. Daarmee wordt de kwaliteit van de applicatie logging nog belangrijker. De tester kan helpen om te valideren dat er geen vervuiling in de applicatie log optreedt en de juiste acties worden gelogd.

De effectiviteit van de testtool is in grote mate afhankelijk van de juiste configuratie. Naast de configuratie van de tool zal ook het beloningsmodel gefinetuned moeten worden. Hoe zit dit?

Bij het voordeel van het bestelproces moet de testtool leren welke stappen op elkaar volgen. Om dat te doen gebruikt de AI in het testtool Reinforcement Learning, dit werkt op het beloningsprincipe. Elke pagina in de applicatie krijgt een waarde, bijvoorbeeld 1. Omdat we willen dat het bestelproces afgerond wordt met een betaling krijgt deze pagina een veel hogere waarde, bijvoorbeeld 1.000. De AI vindt een weg om de hoogste beloning binnen te halen. Aan het beloningsmodel zitten een aantal knoppen waar je aan kan draaien die beïnvloeden hoe snel de tool leert. Hier kan de tester een waardevolle rol in spelen.

Poll

Pas jij testtools die gebruik maken van AI toe in je werk?

Bekijk resultaten

Niveau 5

Omdat er nog geen eenduidig beeld is over een testtool dat voor het merendeel uit AI bestaat is er nog moeilijk een voorspelling te doen over wat de rol van de tester gaat zijn. Bij een niveau van AI waar we het dan over hebben is deze een gelijkwaardige gesprekspartner van de product owner. De mening van experts op het gebied van AI lopen sterk uiteen over wanneer we zoiets kunnen verwachten. Een expert verwoordde het pakkend: tussen de 20 en 2.000 jaar.

Veel AI is narrow AI, dat wil zeggen dat het voor een specifiek doel ontwikkeld wordt. Aspecten waarop de tester dan waarde kan toevoegen ligt dan vooral op zaken die niet altijd zwartwit zijn. Bijvoorbeeld het interpreteren en het inschatten van risico’s binnen een bepaalde context: dit is niet iets wat snel door AI  wordt overgenomen. De tester kan op dit gebied dus nog veel waarde toevoegen.

Conclusie

Vanaf niveau 3 zien we de werking van AI echt in de testtools zichtbaar worden en substantieel waarde toevoegen ten opzichte van traditionele testtools. De ontwikkeling van deze tools staat niet stil en in de toekomst zullen ze de tester steeds meer werk uit handen nemen.

Wat blijft er dan over voor de testers? Is onze rol uitgespeeld? Ik voorzie niet dat onze rol overbodig gaat worden, wel zullen accenten gaan verschuiven. De tester van de toekomst zal in toenemende mate meer waarde toevoegen op het gebied van Whole Team Approach en Exploration. Deze beweging is al zichtbaar in ons vakgebied, onder andere met de komst van de Modern Testing Principles waar Robert Lourens in zijn blog over schrijft.

AI

Schrijf je in voor
de nieuwsbrief

Bartosz_Header_004

Werken bij Bartosz?

Vincent Verhelst

Geïnteresseerd in Bartosz? Dan ga ik graag met jou in gesprek. We kunnen elkaar ontmoeten met een kop koffie bij ons op kantoor. Of tijdens ontbijt, lunch, borrel of diner op een plek die jou het beste uitkomt. Jij mag het zeggen.

Mijn Paarsz