acceptance testing

A software or hardware development test phase designed to demonstrate that the system under test meets requirements. This phase is unique in all test activities in that its purpose is to demonstrate sufficiency and correctness, not to find problems. Acceptance testing is usually the last test phase before a product is released.

ad hoc testing

Testing without written test cases, documented expected results, a checklist, a script, or instructions. Ad hoc tests often are not captured, which leads to questions about coverage and makes it impossible to do proper regression testing. Ad hoc testing can, however, be useful as a way to develop tests if records are kept. Also called ad-lib testing. Contrast with exploratory testing.

behavioral tests

Tests based on what a computer system, hardware or software, is supposed to do. Such tests are usage-based and functional, at the levels of features, operational profiles, and customer scenarios. Also called black-box tests or functional tests.

black-box tests

See behavioral tests.


A problem present in the system under test that causes it to fail to meet reasonable expectations. The reasonableness of an expectation can be determined by iterative consensus or management fiat if it is not obvious or defined (in the design specification or requirements documents). Notice that the test team usually sees only the failure, the improper behavior, but the bug itself is the flaw that causes the failure.

bug ...

Get Managing the Testing Process: Practical Tools and Techniques for Managing Hardware and Software Testing now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.