"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:
- RST’s Heuristic Test Strategy Model
- Test Heuristics Cheat Sheet door Elisabeth Hendrickson
- FEW HICCUPS door Michael Bolton
- Microheuristics door Alex Schladebeck
- Analysis, Test Design, and Test Execution Heuristics uit The Little Black Book on Test Design
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.