• Software Testing Dictionary
  • Home

Software Ad Hoc Testing

Testing is done in both formal and informal ways to enhance software quality. After the formal testing has been completed, a round of informal and arbitrary testing is conducted. This is known as the ad hoc testing.

What is Ad Hoc Testing?

An ad hoc testing is an informal testing technique done on the software to find defects. It is conducted in a random format, and is also known as the monkey testing. An ad hoc testing does not follow a systematic approach, and devoid of any well documented test cases.

Ad hoc testing does not have any documentations, test scenarios, cases etc. The developers find it difficult to fix defects detected by ad hoc testing because of the absence of these testing documents. Also, some critical, rare, and unanticipated bugs are only identified by conducting a random and informal testing on the software. It is also a kind of acceptance testing and saves the time of creating new test cases.

A practical example of ad hoc testing is suppose a software needs to be shipped to client in a day, and its development is finished just a day before that, at this point there is no time left to create and execute test cases so the test team conducts ad hoc testing on entire software based on overall product knowledge and experience.

Types of Ad Hoc Testing

The difference types of ad hoc testing are listed below −

Buddy Testing

In buddy testing, there is involvement of at least two members during the testing process - one developer, and one tester. Once the developer completes implementing a component, he does unit testing on it. Post that the tester feeds some random, arbitrary data to the same component and examines the outcomes. In cases of any errors, the developer fixes those defects.

Pair Testing

In pair testing, there is involvement of two testers. One of them performs informal and random verification of the software, and the other one keeps a record of the test results. Thus both of them work in a pair and exchange ideas, knowledge so that the testing is done properly.

Features of Ad Hoc Testing

The features of ad hoc testing are listed below −

  • It is a random and informal approach to testing.
  • It is not supported by any documentation, test scenarios, cases etc.
  • It is performed after formal testing is completed.
  • It does not follow a methodical or structured approach.
  • It takes less time to conduct ad hoc testing.
  • It detects bugs on the software where test cases are not available.

When is Ad Hoc Testing Done?

The ad hoc testing is done in the scenarios listed below &minu;

  • There is limited time available for testing the software.
  • Formal testing has been completed.
  • Test cases are not available.

When is Ad Hoc Testing not Done?

The ad hoc testing is not done in the scenarios listed below −

  • It is not done if bugs are detected by executing the test cases.
  • At the time of beta testing, it is not done.

Advantages of Ad Hoc Testing

The advantages of ad hoc testing are listed below −

  • It does not adhere to any process, so ad hoc testing can be done at any point in the software development life cycle.
  • The testing team can verify the software and find errors by applying new test techniques without relying only on the test cases.
  • A developer can perform ad hoc testing on the same module he is developing, and increase his code quality.
  • While the formal testing process takes a lot of time, ad hoc testing can be performed in a short time.
  • It does not require any documentation.

Disadvantages of Ad Hoc Testing

The disadvantages of ad hoc testing are listed below −

  • Ad hoc testing needs to be performed by team members who have testing experiences and sound knowledge on the product. Any inexperienced member of the team cannot perform an ad hoc testing.
  • In case of a bug, it is difficult to reproduce the same since the ad hoc testing is not driven by any planning.

Best Practices to be Followed in Ad Hoc Testing

The best practices to be followed in ad hoc testing are listed below −

  • Gather all knowledge on the product.
  • Identify the defect prone components of the software and prioritize them.
  • Use of suitable testing tools.


This concludes our comprehensive take on the tutorial on Software Ad Hoc Testing. We’ve started with describing what is ad hoc testing, what are the types, features, techniques, advantages, disadvantages, time, and best practices of ad hoc testing.

This equips you with in-depth knowledge of Software Ad Hoc Testing. It is wise to keep practicing what you’ve learned and exploring others relevant to Software Testing to deepen your understanding and expand your horizons.