Experimental study to compare the use of metamorphic testing and assertion checking

Research output: Journal Publications and Reviews (RGC: 21, 22, 62)21_Publication in refereed journalpeer-review

22 Scopus Citations
View graph of relations


Related Research Unit(s)


Original languageEnglish
Pages (from-to)2637-2654
Journal / PublicationRuan Jian Xue Bao/Journal of Software
Issue number10
Publication statusPublished - Oct 2009


A test oracle in software testing is a mechanism for checking whether the program under test behaves correctly for any execution. In some practical situations, oracles can be unavailable or too expensive to apply. Metamorphic testing (MT) was proposed to alleviate this problem so that software can be delivered under the time-to-market pressure. However, the effectiveness of MT has not been studied adequately. This paper conducts a controlled experiment to investigate the cost effectiveness of using MT. The fault detection capability and time cost of MT are compared with the standard assertion checking method. The results show that MT has potentials to detect more faults than the assertion checking method. The experimental results also show a trade-off between the two testing methods: MT can be less efficient but more effective, and can be defined at a coarser level of granularity than the assertion checking method. © by Institute of Software, the Chinese Academy of Sciences. All rights reserved.

Research Area(s)

  • Assertion checking, Controlled experiment, Empirical evaluation, Metamorphic testing, Test oracle