In
computing,
software testers and
software engineers can use an
oracle as a mechanism for determining whether a test has passed or failed. The use of oracles involves comparing the output(s) of the system under test, for a given
test-case input, to the output(s) that the oracle determines that product should have. William E. Howden first defined and used the term in this sense in his article "Introduction to the Theory of Testing". Additional work on different kinds of oracles was explored by
Elaine Weyuker.