Ad Hoc Testing – A Code Factory Overview

What is Ad hoc Testing?

It is often known as Random Testing. It is an informal form of testing that doesn’t follow a script but rather error guessing while specific test cases are being created. The aim of Ad hoc testing is usually to try and break the system. Through the method of error guessing a person with enough experience on the system will be able to guess the most likely source of errors.

There is no documentation or planning required for this form of testing. This saves a lot of time in the testing process, but it can make it difficult to find the defects again without the steps laid out in a testing plan. We will go through the methods and objectives of Ad hoc testing.

Ad hoc Testing Types

1. Buddy Testing

This requires the cooperation of two specialists. Usually, it is one person from the testing team and one from the development team. This type of testing allows testers to create better test cases and detect uncommon errors. The development team also gets to apply design changes in the early stages of the project. Buddy testing usually takes place after Unit testing.

2. Pair Testing

Quite like Buddy Testing but the two specialists are usually from the testing team. In general, both testers share different levels of knowledge and they work together to share ideas to identify defects. A general rule is that they will take different roles such as one person is performing tests while the other takes notes of the findings. It is beneficial to have a second set of eyes on testing but also improves the overall quality of less experienced QA analysts.

3. Monkey Testing

The most common type of Ad hoc testing. The goal of this is to break the system. Defects that are found using this method are more difficult to reproduce without written steps. However, these ones usually would not be found by strictly following test cases. This method is used during acceptance testing. The success of this is usually down to the individual’s knowledge of the system and creativity to find bugs as well as some luck from time to time.

Why use Ad hoc Testing?

Some of the benefits of using this method of testing is the fact that it is faster than structured testing. This is because you must fill out test cases and documentation when doing structured testing. There is a benefit to fast testing as it will facilitate agile development in your teams. Ad hoc is a good check for the completeness of testing and can find some more defects than planned testing.

Being one of the most informal types of testing it still has a useful purpose. It saves time across the development and testing teams overall. Using a QA engineer that is talented and experienced in the system will allow them to make reasonable assumptions in areas that contain defects. Each step in the Ad hoc testing process is improvised so there is no general outline or pattern used during this kind of test, as in most areas the quality of your QA and development teams are key to success in this testing. Ad hoc testing is extremely effective with a good team in place and should have an important role in the overall testing process.