Oracle (software testing)

For other uses, see oracle (disambiguation).

In computing, software testers and software engineers can use an oracle as a mechanism for determining whether a test has passed or failed.[1] 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".[2] Additional work on different kinds of oracles was explored by Elaine Weyuker.[3]

Oracles often operate separately from the system under test.[4] Method postconditions are commonly used as automated oracles in automated class testing.[5] The oracle problem is often much harder than it seems, and involves solving problems related to controllability and observability.[6]

Common oracles include:

References

  1. Kaner, Cem; A Course in Black Box Software Testing, 2004
  2. In: Miller, Edward; and Howden, William E.; Software Testing and Validation Techniques, Long Beach, CA: IEEE Computer Society Press, 1978 (first edition), pp. 16-19
  3. Weyuker, Elaine J.; "The Oracle Assumption of Program Testing", in Proceedings of the 13th International Conference on System Sciences (ICSS), Honolulu, HI, January 1980, pp. 44-49
  4. Jalote, Pankaj; An Integrated Approach to Software Engineering, Springer/Birkhäuser, 2005, ISBN 0-387-20881-X
  5. Meyer, Bertrand; et al.; "Programs that Test Themselves", IEEE Computer, 42:9 (September 2009), pp. 46-55
  6. 1 2 Ammann, Paul; and Offutt, Jeff; "Introduction to Software Testing", Cambridge University Press, 2008, ISBN 978-0-521-88038-1
  7. Peters, Dennis K. (1995). Generating a Test Oracle from Program Documentation (M. Eng. thesis). McMaster University. CiteSeerX: 10.1.1.69.4331.
  8. Peters, Dennis K.; Parnas, David L. "Generating a Test Oracle from Program Documentation" (PDF). Proceedings of the 1994 International Symposium on Software Testing and Analysis. ISSTA. ACM Press. pp. 58–65.
  9. Hoffman, Douglas; Heuristic Test Oracles, Software Testing & Quality Engineering Magazine, 1999
  10. Mayer, Johannes; and Guderlei, Ralph; Test Oracles Using Statistical Methods
  11. Hoffman, Douglas; Analysis of a Taxonomy for Test Oracles, Quality Week, 1998
  12. Robinson, Harry; Finite State Model-Based Testing on a Shoestring, STAR West 1999

Bibliography

This article is issued from Wikipedia - version of the Friday, October 17, 2014. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.