Ad hoc testing is a commonly used term for planned
software testing
Software testing is the act of checking whether software satisfies expectations.
Software testing can provide objective, independent information about the Quality (business), quality of software and the risk of its failure to a User (computin ...
that is performed without initial
test case
In software engineering, a test case is a specification of the inputs, execution conditions, testing procedure, and expected results that define a single test to be executed to achieve a particular software testing objective, such as to exercise ...
documentation;
however, ad hoc testing can also be applied to other scientific research and
quality control
Quality control (QC) is a process by which entities review the quality of all factors involved in production. ISO 9000 defines quality control as "a part of quality management focused on fulfilling quality requirements".
This approach plac ...
efforts.
Ad hoc tests are useful for adding additional confidence to a resulting product or process, as well as quickly spotting important defects or inefficiencies,
but they have some disadvantages, such as having inherent uncertainties in their performance
and not being as useful without proper documentation post-execution and -completion.
Occasionally, ad hoc testing is compared to
exploratory testing as being less rigorous, though others argue that ad hoc testing still has value as "improvised testing that deals well with verifying a specific subject."
Ad hoc testing of software
When
testing software, that testing may be methodical or more improvisational. Methodical testing will include written
test cases, which detail their own set of specified inputs, execution conditions, testing procedures, and expected results as a means of achieving a particular software testing objective. Ad hoc testing may have a more "improvisational" feel to it as initial test cases are not documented and the tester's
intuition
Intuition is the ability to acquire knowledge without recourse to conscious reasoning or needing an explanation. Different fields use the word "intuition" in very different ways, including but not limited to: direct access to unconscious knowledg ...
, skillset, and experience are more relevant;
however, ad hoc testing of software is still largely a planned activity.
The tester still intends to apply—as part of the overall
software development process
In software engineering, a software development process or software development life cycle (SDLC) is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or s ...
—their own methodology to find
bugs not anticipated for by planned test cases using any means that seem appropriate given the situation.
Ad hoc testing can, for example, be an extension of existing documented test cases but intend to apply invented variations of those test cases improvisationally without formally documenting the specifics beforehand.
However, as Desikan notes, to get the most from an ad hoc test and limit its downsides, the test should be properly documented post-execution and -completion, and the results report should address how any defects were identified in a step-by-step manner.
Ad hoc testing in other scientific pursuits
Ad hoc testing is not limited to software development. Ad hoc testing has been applied in other scientific and
quality management
Total quality management, Total Quality management (TQM), ensures that an organization, product, or service consistently performs as intended, as opposed to Quality Management, which focuses on work process and procedure standards. It has four mai ...
scenarios. For example, ad hoc testing has been applied in standardized on-site testing at healthcare facilities of "the
electromagnetic immunity of
medical device
A medical device is any device intended to be used for medical purposes. Significant potential for hazards are inherent when using a device for medical purposes and thus medical devices must be proved safe and effective with reasonable assura ...
s and help identify
interference
Interference is the act of interfering, invading, or poaching. Interference may also refer to:
Communications
* Interference (communication), anything which alters, modifies, or disrupts a message
* Adjacent-channel interference, caused by extra ...
issues that might exist with critical medical devices as a result of emissions from
RF transmitters," using IEEE/ANSI C63.18-2014.
Other areas where ad hoc testing has been applied include:
*
clinical diagnostics and
point-of-care testing
*
food and beverage safety
*
healthcare
Health care, or healthcare, is the improvement or maintenance of health via the preventive healthcare, prevention, diagnosis, therapy, treatment, wikt:amelioration, amelioration or cure of disease, illness, injury, and other disability, physic ...
and
public health
Public health is "the science and art of preventing disease, prolonging life and promoting health through the organized efforts and informed choices of society, organizations, public and private, communities and individuals". Analyzing the de ...
research
References
{{Reflist, colwidth=30em
Software testing