It is a popular myth in the testing industry that there is no end to testing a product or an application. Testing as a discipline has evolved in the last 2+ decades giving itself a formal structure. Various facets of software testing such as quality consulting, test strategy, test planning, traceability and requirements analysis, largely contribute towards breaking the myth. Newer and more innovative testing techniques are evolving by the day, to help the test team confidently sign off on a product release amidst the ever shrinking product release timelines. Exploratory testing is one such technique that has withstood the test of time yielding very good results and also helping the tester think out of box. In my past assignments, I have seen exploratory testing being relied upon completely over formal testing techniques, in situations where the product requirements were not very clear or where the release timelines were very short and did not have much flexibility. When such is the importance and value of exploratory testing, how can you encourage your teams to use this technique more frequently and how can you better interpret & communicate the results of exploratory testing in making the very important decision of “test sign off”?
Here are some simple yet effective techniques to motivate your team into exploratory testing and get the most out of it:
1. Often times, there is no room for exploratory testing since the team is very busy running scripted/planned tests. Try and set aside about half hour each day for the team to take on exploratory testing. This is the time where they are not going to be mandated by any formal tests. They are encouraged to be creative and putting themselves in the shoes of the end user in trying out varied scenarios. Depending on your product cycle, this may not be required on a daily basis. Dial it up or down at periodic intervals.
2. If the product under test happens to be heavily role based that may also need simultaneous interactions – e.g. a learning application where you have a student role, teacher role, admin role etc., assign roles to your testers during the exploratory phase and also periodically swap roles so a tester does not play the same role each time
3. Whether you are a product or a services company, take the initiative to conduct periodic bug bashes. These go a long way in adding value to your overall project engagement with your customer. Give prizes to testers for various categories of bugs such as most number of bugs, most severe/ship stopper, bug that has the most customer impact etc. The prize could even be appreciating the tester in front of the entire team or giving him/her a certificate – these are gestures that go a long way.
4. Cross assign testers across products – In situations where the project that is in progress does not have restrictions imposed on external team members (from your own company) testing your product, encourage such cross sharing of testers to promote more creativity. This not only motivates the tester by breaking his monotony of testing the same product but also brings in fresh pairs of eyes and perspectives to test the product.
5. Also, depending on the product under test, involve non testers to come play around with the product. In my past engagements, where we tested a mobile application, we had test managers and directors come participate in the bug bash which helped us emulate some very realistic user scenarios
Encourage exploratory testing for all kinds of testing assignments – black, gray and white box. It is often misconstrued that exploratory testing can be done only black box. If you understand the definition of exploratory testing as something that promotes the tester to be extempore rather than being bound by a formally written test case, you will appreciate this technique in all testing assignments.
Nurturing a culture of exploratory testing in your teams/company is half battle won, the other important thing is to be able to interpret the results of exploratory testing. Unless this is done in an informed manner, to the untrained eye, it may reflect badly on the overall test coverage. Look out for another post on this very important topic.