Poll
Maak jij gebruik van een generatieve AI-tool bij Exploratory testing?
De beperkingen van generatieve AI bij Exploratory testing
Als we AI gaan gebruiken bij ET, moeten we voorzichtig zijn. Hoewel de generatieve AI-tools, zoals bijvoorbeeld ChatGPT, over veel mogelijkheden beschikken, zijn ze niet in staat diepe context te begrijpen zoals wij mensen wel kunnen. Het ontbreekt aan een diep begrip van het doel, de doelgroep van het product en het verwachte gebruik door de doelgroep. Simpelweg omdat de trainingsdata van de tool niet voorziet in de specifieke software die je wilt testen. Zolang je je bewust bent van de beperkingen tijdens het gebruik, kun je AI gebruiken als hulpmiddel.
Generatieve AI is afhankelijk van een uitgebreide trainingsdataset als primaire bron en wordt bepaald door vele parameters, die dienen als opslagplaats voor de verzamelde ‘kennis’. Als gevolg hiervan blinkt bijvoorbeeld ChatGPT uit in taken als tekstclassificatie, het beantwoorden van vragen, het samenvatten van documenten, het herschrijven van documenten en het genereren van tekst.
Er worden vanuit verschillende hoeken terechte zorgen geuit over:
- Door elkaar halen en verkeerd combineren van feiten en referenties.
- Vertrouwen op bronnen die niet geverifieerd zijn op betrouwbaarheid.
- Bias op gegeneerde inhoud.
- Beperkt begrip van context.
Hier moet je dus rekening mee houden.
Hoe zorgen voor een betrouwbaar resultaat?
Je kunt dus niet uitsluitend vertrouwen op generatieve AI voor ET, laat staan dat het een tester kan vervangen. Voor ET zijn inhoudelijke kennis, diepe context van het product, product risico’s, wensen en gedrag van de gebruikers en nog een aantal andere parameters van belang. Je bepaalt vooraf strategieën hoe je het testen gaat aanvliegen. Gedurende de uitvoering maak je keuzes op basis van al die parameters die van belang zijn. Dit is een dusdanig complex proces dat je bij het gebruik van een generatieve AI-tool zaken gaat missen. En dus ook risico’s en fouten in de software over het hoofd kan gaan zien. Met alle gevolgen van dien als deze software uiteindelijk naar de gebruikers gaat.
Waarbij kan AI ondersteunend zijn?
Een test uit laten voeren door een generatieve AI-tool is vooralsnog geen betrouwbare en verstandige optie. Hoe zou je het als testers dan wel kunnen gebruiken? Het kan nuttig zijn voor inspiratie, generen van testdata en als bron voor nieuwe ideeën. De tijd die je wint, kun je weer steken in het beter en uitgebreider testen van het test object. Aan de hand van wat voorbeelden, laat ik zien hoe je sneller op weg raakt bij bijvoorbeeld het maken van een strategie of het bedenken van testdata.
Voorbeelden
Ik gebruik in deze blog ChatGPT, maar je bent natuurlijk vrij in de keuze voor een andere generatieve AI-tool. Hieronder volgen drie voorbeelden.
1. Starten met basisstrategie voor ET
Om jezelf te helpen/inspireren voor de aanpak van ET waarbij je bijvoorbeeld wilt kijken naar de gebruikersvriendelijkheid van een testobject, kun je aan ChatGPT vragen om een teststrategie te generen. Je hebt dan een startpunt en vanuit daar kun je je strategie uitbreiden.
Snel voorbeeld
“Genereer een teststrategie voor exploratory testing bij het controleren of een applicatie gebruiksvriendelijk is.”
2. Fictieve testdata genereren op basis van parameters
Tijdens het uitvoeren van testen heb je vaak (en veel) testdata nodig en dat genereren kan een tijdrovende klus zijn. Je wilt daarnaast ook voorkomen dat je uit gemak telkens dezelfde gegevens gebruikt. Je kunt ChatGPT gebruiken om fictieve representatieve data te genereren.
Voorbeeld
“Geef mij 1 klant met de naam van een bekende wielrenner inclusief een fictief adres, postcode in Nederland, geldig iban bankrekeningnummer bij willekeurige Nederlandse bank, geboortedatum, kenteken van een auto, merk en type van een auto, VIN nummer, aantal schadevrije jaren en soort verzekering en e-mailadres die klant zijn bij een verzekeraar en een autoverzekering heeft.”
3. Inspiratie voor testscenario’s
Stel je wilt nieuwe functionaliteit in de software gaan testen en je hebt behoefte aan een startpunt voor testscenario’s. Dan kun je vragen of er onderwerpen zijn waar je op kan letten/focussen. Net als bij de teststrategie-vraag kan dit een mooi startpunt zijn om verder uit te bouwen.
Voorbeeld
“Creëer testscenario’s om de geldigheid van de aangeleverde gegevens van een klant voor een autoverzekering te controleren”
Kwaliteit van generatieve AI-antwoorden verbeteren
Om in de toekomst de best mogelijke antwoorden te krijgen, moet je duidelijk hebben wat de bedoeling is. Let daarom op het volgende:
- Wees zeer relevant in de gestelde vraag
- Verstrek nauwkeurige en feitelijke informatie
- Geef aan wat het gewenste detailniveau is
- Geef aan wat de gewenste lay-out is
De drie stappen die je kunt ondernemen om de antwoorden van een generatieve AI-tool te verbeteren, zijn:
- Toevoegen specifieke context van jouw applicatie
- Voorbeelden geven van de gewenste antwoorden
- Controleren van de antwoorden
De kunst van het verkennen
Om na deze korte analyse te concluderen dat AI een zegen is voor ET is wat overdreven, maar een vloek is het zeker niet. Generatieve AI-tools kunnen handige hulpmiddelen zijn om jezelf meer uit te dagen, testdata te genereren, simpele/saaie taken van je over te nemen en je te helpen bij brainstormsessies. Het begrijpen van diepe context is iets waar generatieve AI nog echt tekortkomt in vergelijking met een tester. Door het trainen van de generatieve AI-tool kan het antwoord in de toekomst betrouwbaarder worden.
Tot die tijd is de mens nog steeds beter is en nodig voor het kritische denken! Gelukkig maar, want je creativiteit de vrije loop laten is voor mij een van de leukste aspecten van het testvak. Gebruik generatieve AI dus vooralsnog om jezelf op gang te helpen en creatief uit te dagen. En niet om ongecontroleerde taken uit te voeren.