Exploratory testing is an approach to software assessment that integrates learning about the program with designing the test and conducting the testing processes. The simultaneous process ensures that developers have a more comprehensive understanding of how it should work and create more effective tests and, as a result, be better equipped to find problems.
End users are sometimes employed as testers in the exploratory model because the approach of a person who will be eventually using the software is naturally geared towards learning about it and testing its functionality.
Exploratory testing is sometimes referred to as ad hoc testing. However, the ad hoc approach typically eschews test design and documentation.