Tool for Metamorphic Testing

  • Ilona BluemkeEmail author
  • Paweł Kamiński
Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 1173)


Metamorphic testing is an approach to test case generation and also to the test result verification. It is a testing technique that can be successfully used in many domains e.g. web services, computer graphics, simulation and even embedded systems. In metamorphic testing checks are performed to verify whether multiple executions of the program under test fulfil certain necessary properties, called metamorphic relations. Since its first publication, many papers on different aspects of metamorphic appeared in the literature but only one tool for this type of testing was described. We decided to design and implement our own tool and with this tool to examine some properties and challenges of metamorphic testing. In this paper we briefly review metamorphic relations and describe our tool. We also present an example of metamorphic testing with our tool.


Software testing Metamorphic testing Test case 


  1. 1.
    Chen, T.Y., Cheung, S.C., Yiu, S.: Metamorphic testing: a new approach for generating next test cases. In: Technical Report HKUST-CS98-01, Department of Computer Science, Hong Kong University of Science and Technology (1998)Google Scholar
  2. 2.
    Chan, W.K., Chen, T.Y., Lu, H., Tse, T.H., Yau, S.S.: Integration testing of context-sensitive middleware-based applications: A metamorphic approach. Int. J. Softw. Eng. Know. Eng. 16(5), 677–704 (2006)CrossRefGoogle Scholar
  3. 3.
    Chen, T.Y.: Metamorphic testing: a simple method for alleviating the test oracle problem. In: 2015 IEEE/ACM 10th International Workshop on Automation of Software Test, pp. 53–54 (2015)Google Scholar
  4. 4.
    Hui, Z., Huang, S., Chen, T.Y., Lau, M.F., Ng, S.: Identifying failed test cases through metamorphic testing. In: 2017 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW), pp. 90–91 (2017)Google Scholar
  5. 5.
    Chen, L., Cai, L., Liu, J., Liu, Z., Wei, S., Liu, P.: An optimized method for generating cases of metamorphic testing. In: 2012 6th International Conference on New Trends in Information Science, Service Science and Data Mining (ISSDM 2012), pp. 439–443 (2012)Google Scholar
  6. 6.
    Segura, S., Parejo, J.A., Troya, J., Ruiz-Cortés, A.: Metamorphic testing of RESTful Web APIs. IEEE Trans. Softw. Eng. 44(11), 1083–1099 (2018)CrossRefGoogle Scholar
  7. 7.
    Segura, S., Fraser, G., Sanchez, A.B., Ruiz-Cortés, A.: A survey on metamorphic testing. IEEE Trans. Softw. Eng. 42(9), 805–824 (2016)CrossRefGoogle Scholar
  8. 8.
    Segura, S., Durán, A., Troya, J., Ruiz-Cortés, A.R.: A template-based approach to describing metamorphic relations. In: 2017 IEEE/ACM 2nd International Workshop on Metamorphic Testing (MET), pp. 3–9 (2017)Google Scholar
  9. 9.
    Lijun, S., Hong, Z.: Generating structurally complex test cases by data mutation: a case study of testing an automated modelling tool. Comput. J. 52(5), 571–588 (2009)CrossRefGoogle Scholar
  10. 10.
    Sun, C., Wang, G., Mu, B., Liu, H., Wang, Z., Chen, T.Y.: Metamorphic testing for web services: framework and a case study. In: 2011 IEEE International Conference on Web Services, pp. 283–290 (2011)Google Scholar
  11. 11.
    Zhu, H.: JFuzz: a tool for automated java unit testing based on data mutation and metamorphic testing methods. In: Second International Conference on Trustworthy Systems and Their Applications, pp. 8–15 (2015)Google Scholar
  12. 12.
    Introducing json. Accessed Jan 2020
  13. 13.
    Junit 5 user guide. Accessed Jan 2020
  14. 14.
  15. 15.
    Kamiński, P.: Metamorphic testing. Bachelor thesis, Institute of Computer Science, Warsaw University of Technology (2019). (in Polish)Google Scholar

Copyright information

© The Editor(s) (if applicable) and The Author(s), under exclusive license to Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Institute of Computer ScienceWarsaw University of TechnologyWarsawPoland

Personalised recommendations