摘要:Metamorphic testing has been applied in various systems from different domains. Many studies showed that the selection of metamorphic relations greatly affected the effectiveness of metamorphic testing. However, these studies mainly focused on the fault-detection effectiveness. They did not consider the cost that metamorphic relations involved, such as the number of test inputs. Good metamorphic relations should have high fault-detection effectiveness with a low cost. In this paper, we propose a cost-driven approach for metamorphic testing. The key idea is to design metamorphic relations sharing the same test inputs to reduce the testing cost. We conduct a case study on a bank system and compare the cost-effectiveness of metamorphic relations derived from this approach and those constructed by the conventional approach. The experimental results show that metamorphic relations derived from our approach are more cost-effective. We also find that this approach not only reduces the cost of metamorphic testing, but also helps to construct different metamorphic relations to detect different types of faults.