Scripting BAD! Exploring GOOD! Amirite!?
No. Not right! Although, I used to think that back in the day š . Then I realised that I was biased against scripting and wondered if that was sensible. I designed a workshop to help testers experience the difference between scripting and exploring.
Here are the conclusions that I came up with.
What are the characteristics of scripted work?
When I say āscriptedā, I mean āthe kind of testing that resolves to a pass or fail resultā.
Hereās what I came up with:
Capture how to do essential tests
Tests specific objective facts about the system
May miss emergent behaviour of the system
Can be more easily turned into an automated test of some kind
Often contain lots of pre-designed steps that must be followed
Is easy to report on how many have been executed, passed and failed
Time focused on documenting test cases
While itās not perfect, itās not as useless as Iād come to believe!
What are the characteristics of exploratory work?
When I say āexploratoryā, I mean āthe kind of testing that starts with an open question to which we donāt know the answerā.
Hereās what I came up with:
Capture why to test important features
Can mitigate specific risks in the system
Is more able to spot emergent behaviour of the system
Difficult to easily turn into an automated test of some kind
Leave the performance of the test up to the tester
Is easy to report on what has been tested, what hasnāt and why
Time focused on doing testing
While itās obviously useful, itās not as flawless as Iād come to believe!
Scripting vs Exploring?
Canāt we do both?
I say yes. Leverage the scripted approach for things we can imagine beforehand and resolve to a pass/fail result. However, we should also leverage the exploratory approach when we have an open question, typically a risk, that we must research before answering. Itās less about doing one and ignoring the other.
Itās about using the right mix to complement each other!