Auteur: Gilbert Smulders ● gilbert.smulders@viqit.nl
Ik ben altijd geïnteresseerd in wat mensen roepen over de toekomst van ons vak. Niet omdat ik die visies graag wil afbranden of dat ik er blind in ga geloven. Ik wil voornamelijk mijzelf hiermee triggeren om weer na te denken over hoe ik mijn vak uitoefen. Toen ik tijdens mijn zoektocht voor een nieuwe videoreview tegen deze video van Jason Arbon over AI aanliep, leek me dit een mooi onderwerp voor een review.
De spreker
Jason Aborn is een Amerikaan die zich heeft gespecialiseerd in testautomatisering en robotisering. Hij heeft ervaring als testlead voor onder andere Microsoft en Google Chrome. Hij is oprichter en eigenaar van test.ai en de daar ontwikkelde tool AppDiff. Daarnaast is hij schrijver van het boek ‘How Google tests software’ samen met James Whittaker en Jeff Carollo.
Het interview
Het interview is gehouden tijdens StarEast in 2017 door Jennifer Bonine. Zij publiceert vaker interviews op stickyminds.com. Dit is een community platform voor softwaretesters. Voordeel van deze video is dat de tekst ook nog is toegevoegd aan de site. Dus je kunt later de tekst nog eens rustig nalezen.
Jennifer start het interview door te vragen naar Jason zijn visie op Artificial Intelligence en softwaretesten. Jason begint zijn visie met de angst van mensen dat wij straks worden aangestuurd door robots. Hij denkt niet dat dit ooit gaat gebeuren. Hij denkt wel dat testers onvoldoende realiseren dat die robots hen goed kunnen helpen met testactiviteiten. Als je input-data hebt en verwachte output-data, dan kun je een robot leren om dit voor je te testen.
Hij geeft aan dat steeds meer mensen beginnen te beseffen dat je AI ook kunt inzetten voor testautomatisering. Immers, bij testautomatisering maken testers allemaal input-data die de tool kan gebruiken om handmatige acties te simuleren. Daartegenover zet de tester zijn verwachte output. De vraag is echter hoeveel van die data je nodig hebt om een robot te leren om jouw applicatie te testen. Testers zijn erg gebaat bij automatisering, dus ook bij AI. Eigenlijk is het gewoon een tool.
Vervolgens gaat Jason zijn tool AppDiff toelichten. Je uploadt je applicatie en zijn robots gaan aan de slag. Ze bekijken de tool en beoordelen hoe deze te testen. Er worden allemaal extra robots opgestart en die testen de applicatie zoals een eindgebruiker zou doen. De robots zijn getraind om door applicaties heen te lopen als eindgebruikers of als testers. Ze vinden allerlei bugs, crashes en foutmeldingen en rapporteren dit in een mooi overzicht.
Men probeert bij AppDiff allerlei testcases die ergens zijn bedacht in een soort superbrein te stoppen. Een tester die bijvoorbeeld het e-mailveld wil testen, komt met allerlei mogelijkheden voor valide en invalide invoer. En in plaats van dat iedere tester in de wereld zelf gaat nadenken over valide en invalide invoer voor het e-mailveld moeten ze dit eigenlijk in dit superbrein stoppen. Zo wordt dit superbrein slimmer dan iedere tester.
Testers zijn nog wel erg sceptisch. Zij maken zich natuurlijk wel zorgen of de robot de vijftien testcases van hun sheet ook wel meeneemt. Daarom hebben ze onlangs de optie toegevoegd om deze magische testcases zelf aan de robot mee te geven. Testers moeten ook niet bang zijn dat zij worden vervangen door de robots. De taak van de testers verplaatst zich alleen naar trainer van de robots. Testers moeten meer in de mogelijkheden van AI duiken!
Mijn visie
Als het over AI ging, vroeg ik mij tot op heden eigenlijk alleen maar af: hoe ga je AI testen? Immers, voorspellen van systeemgedrag lijkt alleen maar moeilijker te worden van applicaties gebaseerd op AI. Aan het idee om AI in te zetten als testtooling had ik eigenlijk nooit echt gedacht. En in het begin van het verhaal van Jason dacht ik ook dat een robot nooit een tester zou kunnen vervangen. Immers, testen is niet alleen maar simpel testcases specificeren en uitvoeren, er komt ook veel gevoel bij kijken. Als ik vreemd gedrag zie in de applicatie, dan ga ik daar verder induiken en probeer ik andere variaties toe te voegen om te begrijpen wat er gebeurt. Na Jasons verhaal ben ik nog steeds wel wat sceptisch, maar ook wel nieuwsgierig. Want of ik nu een junior tester train of een robot, dat maakt voor de kennis niet zo veel uit. De vraag is alleen hoeveel softskills je zo’n robot kan leren. En misschien heeft hij die wel helemaal niet nodig.
Al met al een interessant verhaal van Jason Aborn over wat AI ons kan brengen als testers. Wat mij betreft dus een aanrader. Bekijk deze video eens en vorm je eigen mening over de mogelijkheden van AI voor testautomatisering. Graag hoor ik wat jullie ideeën hierover zijn. Is het trainen van robots onze nieuwe rol als tester?
Bekijk de video hier
NieuwsMagazine
Hoi Gilbert, bedankt voor je samenvatting. Dit onderwerp heeft zelfs een eigen TestNet werkgroep! Hoewel we toch aardig wat kennis delen met de TestNet leden, hadden we jou blijkbaar nog niet bereikt. Je bent van harte welkom bij onze werkgroep! Groeten, Sander Mol