Prerequisite – Software Testing
Adhoc Testing :
Adhoc testing is a type of software testing which is performed informally and randomly after the formal testing is completed to find out any loophole in the system. For this reason, it is also known as Random testing or Monkey testing. Adhoc testing is not performed in an structured way so it is not based on any methodological approach. That’s why Adhoc testing is a type of Unstructured Software Testing.
Adhoc testing has –
- No Documentation.
- No Test cases.
- No Test Design.
As it is not based on any test cases or require documentation or test design so resolving issues that are identified at last becomes very difficult for developers. Sometimes very interesting and unexpected errors or uncommon errors are found which would never have been found in written test cases existed. Actually this Adhoc testing is used in Acceptance testing.
Adhoc testing saves a lot of time and one great example of Adhoc testing can be when the client needs the product by today 6 PM but the product development will be completed at 4 PM same day. So in hand only limited time i.e. 2hrs only, so within that 2hrs the developer and tester team can test the system as a whole by taking some random inputs and can check for any errors.
Types of Adhoc Testing :
Adhoc testing is divided into three types as follows.
- Buddy Testing –
Buddy testing is a type of Adhoc testing where two bodies will be involved one is from Developer team and one from tester team. So that after completing one module and after completing Unit testing the tester can test by giving random inputs and the developer can fix the issues too early based on the currently designed test cases. - Pair Testing –
Pair testing is a type of Adhoc testing where two bodies from the testing team can be involved to test the same module. When one tester can perform the random test and another tester can maintain the record of findings. So when two testers get paired they exchange their ideas, opinions and knowledge so good testing is performed on the module. - Monkey Testing –
Monkey testing is a type of Adhoc testing in which the system is tested based on random inputs without any test cases and the behavior of the system is tracked and all the functionalities of the system is working or not is monitored. As the randomness approach is followed there is no constraint on inputs so it is called as Monkey testing.
Characteristics of Adhoc Testing :
- Adhoc testing is performed randomly.
- Based on no documentation, no test cases and no test designs.
- It is done after formal testing.
- It follows an unstructured way of testing.
- It takes comparatively lesser time than other testing techniques.
- It is good for finding bugs and inconsistencies which are mentioned in test cases.
When to conduct Adhoc testing :
- When there limited time in hand to test the system.
- When there is no clear test cases to test the product.
- When formal testing is completed.
- When the development is mostly complete.
When not to conduct Adhoc testing :
- When error exists in the test cases.
- When Beta testing is being carried out.
Advantages of Adhoc testing :
- The errors which can not be identified with written test cases can be identified by Adhoc testing.
- It can be performed within very limited time.
- Helps to create unique test cases.
- This test helps to build a strong product which is less prone towards future problems.
- This testing can be performed any time during Software Development Life Cycle Process (SDLC)
Disadvantages of Adhoc testing :
- Sometimes resolving error based on identified issues is difficult as no written test cases and documents are there.
- Needs good knowledge on product as well as testing concept to perfectly identified the issues in any model.
- It does not provide any assurance that the error will be definitely identified.
- Finding one error may take some uncertain period of time.
Five practices to follow to conduct Adhoc testing :
- Good Software Knowledge.
- Find Out Error-Prone Areas.
- Prioritize Test Areas.
- Roughly Plan The Test Plan.
- Use of the right kind of tools.