As testers, we all know the importance of Exploratory Testing technique. Some of us might be using it already and some of us are still into the traditional testing methods of writing testing scripts. Let me give a brief introduction to this testing technique and then I will explain why adapting to exploratory testing (ET) is not easy for every tester and why some testers swear by it.
As the name says, exploratory testing is used to “explore” the software freely. Here by freely, I mean without any prior conditions or pre-defined test scenarios. There are no traditional scripts, test cases, test plans, etc. involved but tester is free to test random scenarios on the software, this not only gives a tester freedom but also flexibility in running his scenarios since exploratory testing is more action focused. I have seen testers finding more bugs using ET than the traditional test scripts methods. Here ET stands for Exploratory Testing.
Sometimes major or difficult bugs are caught using ET. For example, while I was testing a mobile app using ET method, I found that pressing the alphabet A twice restarted the device. Which seems like a small bug but a major bug for all those customers whose name starts with double A (e.g. Aastha, Aamit, etc.). such bug could not be caught by our traditional test cases or automated scripts. Now, let’s see why some testers find it difficult to adapt to exploratory testing from their usual testing methods.But before digging into that, I am going to brief about all three forms of ET.
You may interested in reading: Difference between Adhoc Testing and Exploratory Testing
Types Of Exploratory Testing:
- Freestyle ET: In the freestyle exploratory testing, we do not follow the traditional approach of writing test scripts and test cases are not pre-defined or designed. In freestyle approach, the testers have the liberty to hit back on the software application areas freely which are prone to defects based on their testing experience and predictions. As there is no formal approach of testing and it is purely based on predictions and experience therefore such king of method is known as freestyle ET
- Session based ET: Testers spend their effort in exploratory testing and they may or may not find the defects. But how their effort can be noticed by the project management? Therefore, Session based ET brought a new concept where the exploratory testing has become auditable and measurable on a wider scale with the use of tools that include the capturing of screen or video recording tools that record the exploratory testing sessions. Such recordings can be used for training and monitoring purposes for newbie testers who join the testing team.
- Test tours or Bug hunts ET: In this method of exploratory testing, the testers explore the application under test and use that software by acting as an end user in order to analyse the stability of the product and outline the performance issues in production like test environment which might have remained unnoticed during the standard QA testing practice. Such a testing practice often results in a long and detailed defects list in terms of usability issues, performance issues, and security issues.Hence, such ET method is termed as test tours or Bug hunts.
Below are my three major factors which I think would help a tester to adapt ET.
Understanding of the whole methodology of exploratory testing:
As discussed above, there are three types of exploratory testing such as freestyle ET, session based ET, and test tours or bug hunts. When a tester is aware of all these types of ET methods, he can easily determine which method to use and when. There are so many different areas of the software under test, and each area cannot be tested using the same technique. This can be learned with experience and clear understanding of the requirements.
Thinking out of the box:
This is the major skill set required by the tester who performs exploratory testing. Like I have mentioned earlier about the bug I found while doing ET on a mobile app, if I didn’t try to break the software or try different random scenarios then I would not have found that annoying bug. It is very important to think from user’s perspective but it is more important to think out of the box. To think such scenarios which can not only make your software reliable but also gives your utter confidence about the overall quality. It is all about being creative and creativity has no limits.
Knowing the balance:
Balance is the key to everything, whether it is Mother Nature, our karma or software testing technique. I always support the balance of manual and automation in every project. Without manual, automation would not have enough test scenarios to cover and without automation, manual efforts would increase and time would be wasted too. Likewise, when I say exploratory testing and traditional testing, I am talking about the balance of these two in every project. It is very important to have that balance to get the maximum quality. Let me explain this with an example, say you have an agile project and in the current iteration, you have a new feature to test. As the release date approaches, client has changed the requirements and now there is not much time left to rewrite all the automated test scripts or manually write every test case. The best way would be ET. Exploratory testing would make sure that every requirement by the customer is satisfied and regression scripts would make sure that nothing is broken by this new feature.
Knowing your interest and skill set is very important. Exploratory testing is not for everyone. If you are an automation tester then you have a skill to code. You know how to convert a repetitive test case to an automated test to save time and efforts. If you are a manual tester then you would know how to increase test coverage by creating test cases according to the requirements and also the border case scenarios. Expertise in exploratory testing would come with experience and practice.
If you are not regular reader of this website then highly recommends you to Sign up for our free email newsletter!! Sign up just providing your email address below: