InformalTesting - benchristel/benchristel.github.io GitHub Wiki
Informal testing is the practice of exploring and evaluating the Behavior of a piece of software, without necessarily having any preconceived ideas about what constitutes desirable behavior. In contrast to FormalTesting, an informal test need not specify an exact procedure or the expectations of the test.
The main disadvantages of informal testing, relative to formal testing, is that informal tests aren't reproducible, and rely on expensive human Judgment to perform the "assertions".
The main advantage of informal testing is that it can discover unanticipated problems. In general, a FormalTest can only be relied on to find problems that the author of the test anticipated might occur. Informal tests can also find problems that are infeasible to describe algorithmically, e.g. awkward text spacing or jerky animations on a user interface.
Informal testing may be manual or automated. Manual informal testing is almost synonymous with ExploratoryTesting. Automated informal tests are rare in my experience. Where they do exist, they typically take the form of scripts that invoke the software under test but do not signal pass/fail in a machine-readable form.
See also: SoftwareTesting