Artikel

Test engineering, Tooling

Exploratory testing is een testaanpak die draait om leren. Het onderscheidt zich van andere testmethoden doordat testontwerp en testuitvoering onlosmakelijk met elkaar verbonden zijn. Terwijl je een applicatie onderzoekt, ontdek je nieuwe inzichten en pas je je teststrategie aan op basis van die ontdekkingen. Dit continue reflectieproces is wat exploratory testing zo waardevol maakt.

Twee soorten testen

James Lyndsay maakt in zijn werk een belangrijk onderscheid tussen twee soorten testen:

  1. Tests gebaseerd op waarde (value): deze tests zijn vooraf ontworpen en richten zich op geëxpliciteerde eisen. Ze worden herhaaldelijk uitgevoerd om te controleren of de applicatie nog steeds voldoet aan verwachtingen.
  2. Tests gebaseerd op risico’s (risk): deze tests worden minder herhaald en tijdens of na ontwerpen en bouwen bedacht en uitgevoerd. Doel hierbij is om onvoorziene risico’s te ontdekken. Ze zijn exploratief en helpen om onbekend gedrag van het systeem aan het licht te brengen.

Ik ben het eens met Lyndsay’s definitie en ook Schuurkes interpretatie, beide soorten testen vullen elkaar aan. Waar vooraf gedefinieerde testcases stabiliteit en consistentie bieden, zorgt exploratory testing voor flexibiliteit en ontdekking. Daarom wordt in de meeste omschrijvingen van deze techniek de fase waarin de reflectie over de testuitvoering plaats vindt sterk benadrukt. Exploratory testing is geen willekeurig klikken door een applicatie, maar juist een gestructureerde manier van testen waarbij je actief nadenkt over je acties en de impact ervan.

De benadering van Maaret Pyhäjärv (Exploratory testing Foundations) in onderstaande quote benadrukt dat testen niet slechts het afwerken van een checklist is, maar een proces van interactie, leren en aanpassen.

"Exploratory testing is an approach to testing that centers learning. Test design and test execution form an inseparable pair where the application and feature we are testing is our external imagination."

Exploratory testing als vaardigheid

Een veelvoorkomende misvatting is dat exploratory testing een intuïtieve of vrijblijvende activiteit is. In werkelijkheid is het een vaardigheid die testers kunnen ontwikkelen en verfijnen. Door het gebruik van heuristieken, richtlijnen en technieken kunnen testers hun exploratieve aanpak structureren en effectiever maken.

Een aantal waardevolle bronnen die kunnen helpen bij het ontwikkelen van exploratory testing vaardigheden:

*bron: Being intentional about exploratory testing

Exploratory testing en automatisering

Een ander belangrijk inzicht is dat exploratory testing en automatisering hand in hand gaan. Het kan zo technisch zijn als de situatie vereist. Exploratory testers kunnen bijvoorbeeld API-tests uitvoeren, logs analyseren en geavanceerde tooling gebruiken om hun onderzoek te ondersteunen.

Testcases, of ze nu geautomatiseerd zijn of niet, zijn in feite een uitkomst van exploratory testing. Ze leggen vast wat we hebben geleerd en we kunnen altijd hergebruiken wat we in de toekomst willen blijven controleren.

Doelgerichte exploratory testing

Zo concludeert ook Schuurkes eindargument in “Being intentional about exploratory testing”. Een cruciale vraag is niet of je aan exploratory testing doet, maar hoe bewust je dit doet. Exploratory testing is namelijk iets dat testers en teams al doen, vaak zonder het expliciet te benoemen. De echte uitdaging is om hier doelgericht mee om te gaan.

Teams die bewust en regelmatig exploratory testing inzetten, presteren naar mijn gevoel vaak beter. Ze ontdekken eerder kritieke problemen, begrijpen hun applicatie beter en kunnen sneller en effectiever reageren op veranderingen.

Conclusie

Exploratory testing is een essentiële vaardigheid voor testers en teams die softwarekwaliteit serieus nemen. Het is meer dan ad-hoc testen; het is een gestructureerde en bewuste manier om een applicatie te doorgronden. Door het combineren van waarde- en risico gebaseerde testen, het gebruik van heuristieken en het integreren van automatisering, kunnen testers effectiever en efficiënter werken. Door exploratie systematisch in te zetten en continu te verbeteren, kan het een krachtig instrument zijn om softwarekwaliteit naar een hoger niveau te tillen.

 

Wil je ons nieuwste Paarsz magazine per post ontvangen? Laat dan je gegevens achter.

Ontwerp zonder titel (19)

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.