Metamorphic Testing and Its Applications

Zhi Quan Zhou, De Huang, T.H. Tse, Zongyuan Yang, Haitao Huang, T. Y. Chen · 2004

An "oracle" in software testing is a procedure by which testers can decide whether the output of the program under testing is correct. In some situations, however, the oracle is not available or too difficult to apply. This is known as the "oracle problem". In other situations, the oracle is often the human tester who checks the testing result manually. The manual prediction and verification of program output greatly decreases the efficiency and increases the cost of testing. A metamorphic testing method has been proposed to test programs without the involvement of an oracle. It employs properties of the target function, known as metamorphic relations, to generate follow-up test cases and verify the outputs automatically. In this article, we shall present the concepts, procedures, and applications of metamorphic testing.

Read the paper · More papers on PaperTik