I am going to start this article with a reflection of when we were children.
I want you to imagine that day in school when you was a very young child and you produced your first ever painting. You took all day to produce it, making careful use of colour and getting exactly how you wanted it to look. At the end of the day you took your painting home to show your parents. You were so excited and full of joy and expectations of what your parents would say about all the hard work you had done. You ran into the living room with your painting in your hand and shouted out “Look Look, what I have done today”. Your parents come over and take great interest in what you have produced, commenting about how clever you are and how wonderful you are. They say how proud they are of you and they place your artwork on the fridge in the kitchen where everyone can see it.
Now if you have recalled this scene in your mind and many of you will do so. How are you feeling? Did the thought make you happy? Did you feel pride in what you did? Are you smiling at this thought?
So now let us zoom toward to present date…
You spend days/weeks/months (Cross out which is applicable) creating test scripts based upon assumptions, writing them up in whatever test case management system you have been told to use. You put all your effort and thinking into being creative creating these step by step instructions for ‘testing’ the system.
After you have done this you then get ready to start testing using the work you have spent so long creating. Once you start testing you realise that most of what you have already done upfront, all that effort is not going to be used. So all these test scripts which you sweated over creating and completing in step by step precise detail, get ignored, never see the light of day, the labour of your work, forgotten and not commented on.
How often when we are told we must follow a scripted testing approach does this happen? If we are honest it does happen a lot, I know to me in the past over half the scripts I created never got reviewed or used. Half of the work I did was just forgotten about and left to gather dust in the test case repository. I should make it clear that I am not against test scripting and that with the correct context they have value but indiscriminatingly forcing people to do something without experiencing it is in my opinion is such a stupid and pointless exercise.
Let us step back to our story from earlier.
Now imagine as a child you rush home to your parents with your painting in hand and once at home your parents take your painting and without saying a word lock it in a drawer and carry on with what they were doing. How would you feel now? Place yourself into the mind of your child self and imagine how would you feel? Upset? Sad? Hurt? Worthless?
So why when we do something as creative as testing do we do this? We create so much in the way of test scripts but never get the chance to be proud of what we have done, what we have achieved. We lock it away never to be used again, never to be talked about. Is it any wonder that so many testers feel sad, unhappy and worthless in what we are being asked to do. It is a key aspect of human nature that we want to show people what we have done, what we feel proud about, we need feedback to know that the tasks we are performing are worthwhile. We need confirmation that we are valuable, needed and wanted. If we continue to carry on with this path of insisting on doing pointless and useless tasks in which we then ignore or and just throw it away then we deserve to feel the way we do.
There are alternatives, using the exploratory testing approach can help prevent this waste; based upon only doing what is necessary at that time, using context. Session based testing can make sure feedback on what you are doing becomes a key element of the testing approach.
Let us start to feel that we are important to software development and that testers are a worthy addition to this.
Some useful reading:
Session Based Test Management
What is Exploratory Testing
Exploratory Testing Resources
Principles of Context Driven