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: 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 de verwachtingen.
  2. Tests gebaseerd op risico’s: deze tests worden in het moment bedacht en uitgevoerd om onvoorziene risico’s te ontdekken. Ze zijn exploratief en helpen om onbekend gedrag van het systeem aan het licht te brengen.

Beide soorten testen zijn noodzakelijk en 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. Het belang van bewustzijn en continue reflectie. 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.

Ik tip graag een aantal waardevolle bronnen die kunnen helpen bij het ontwikkelen van exploratory testing vaardigheden:

Deze hulpmiddelen kunnen testers helpen om hun denkproces te sturen en systematisch risico’s en waardevolle inzichten te ontdekken.

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.

Waar exploratory testing zich richt op het ontdekken van onverwacht gedrag en risico’s, kan automatisering helpen om bekende risico’s snel en herhaaldelijk te controleren. Testcases, of ze nu geautomatiseerd zijn of niet, zijn in feite een uitkomst van exploratory testing. Ze leggen vast wat we hebben geleerd en wat we in de toekomst willen blijven controleren.

Doelgerichte 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.