skip to main content
10.1145/3387903.3389312acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
research-article

Exploratory Datamorphic Testing of Classification Applications

Published:07 October 2020Publication History

ABSTRACT

Testing has been widely recognised as difficult for AI applications. This paper proposes a set of testing strategies for testing machine learning applications in the framework of the datamorphism testing methodology. In these strategies, testing aims at exploring the data space of a classification or clustering application to discover the boundaries between classes that the machine learning application defines. This enables the tester to understand precisely the behaviour and function of the software under test. In the paper, three variants of exploratory strategies are presented with the algorithms as implemented in the automated datamorphic testing tool Morphy. The correctness of these algorithms are formally proved. The paper also reports the results of some controlled experiments with Morphy that study the factors that affect the test effectiveness of the strategies.

References

  1. C. Aggarwal. 2015. Data Mining: The Textbook. Springer.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. X. Bai, J. Li, and A. Ulrich (Eds.). 2018. Proc. of IEEE/ACM 13th International Workshop on Automation of Software Test (AST 2018). IEEE Computer Society, Gothenburg, Sweden.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. T. Y. Chen, F-C. Kuo, H. Liu, P-L. Poon, D. Towey, T. H. Tse, and Z. Q. Zhou. 2018. Metamorphic testing: A review of challenges and opportunities. ACM Comput. Surv. 51, 1, Article 4 (Jan 2018), 27 pages. https://doi.org/10.1145/3143561Google ScholarGoogle Scholar
  4. A. Gotlieb, M. Roper, and P Zhang (Eds.). 2019. Proc. of The First IEEE International Conference on Artificial Intelligence Testing (AITest 2019). IEEE Computer Society, Los Alamitos, CA, USA. https://doi.org/10.1109/AITest.2019Google ScholarGoogle Scholar
  5. M. Mohri, A. Rostamizadeh, and A. Talwalkar. 2012. Foundations of Machine Learning. The MIT Press.Google ScholarGoogle Scholar
  6. M. Roper and Z. Q. Zhou (Eds.). 2020. Proc. of The Second IEEE International Conference on Artificial Intelligence Testing (AITest 2020). IEEE Computer Society, Los Alamitos, CA, USA. (In Press) pages.Google ScholarGoogle Scholar
  7. S. Segura, D. Towey, Z. Q. Zhou, and T. Y. Chen. 2018. Metamorphic testing: testing the untestable. IEEE Software (2018), 1--1. https://doi.org/10.1109/MS.2018.2875968Google ScholarGoogle Scholar
  8. S. Shalev-Shwartz and S. Ben-David. 2014. Understanding Machine Learning: From Theory to Algorithms. Cambridge University Press.Google ScholarGoogle Scholar
  9. L. Shan and H. Zhu. 2009. Generating structurally complex test cases by data mutation: A case study of testing an automated modelling tool. Comput. J. 52, 5 (Aug 2009), 571--588.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Sutton, A. Greene, and P. Amini. 2007. Fuzzing: Brute Force Vulnerability Discovery. Addison-Wesley.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Y. Tian, K. Pei, S. Jana, and B Ray. 2018. DeepTest: Automated testing of deep-neural-network-driven autonomous cars. In Proc. of The 40th IEEE/ACM Int'l Conf. on Software Engineering (ICSE 2018). IEEE Computer Society, Gothenburg, Sweden, 303--314.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. A. Whittaker. 2009. Exploratory Software Testing: Tips, Tricks, Tours, and Techniques to Guide Test Design. Pearson Education. https://books.google.co.uk/books?id=BsB0NpkcdgICGoogle ScholarGoogle Scholar
  13. X. Xie, J. W. K. Ho, C. Murphy, G. Kaiser, B. Xu, and T. Y. Chen. 2011. Testing and validating machine learning classifiers by metamorphic testing. Journal of Systems and Software 84 (2011), 544--558.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. S. Yang, D. Towey, and Z. Zhou. 2019. Metamorphic exploration of an unsupervised clustering program. In Proc. of IEEE/ACM 4th International Workshop on Metamorphic Testing (MET 2019). IEEE Computer Society, 48--54.Google ScholarGoogle Scholar
  15. Z. Q. Zhou and L. Sun. 2019. Metamorphic testing of driverless cars. Commun. ACM 62, 3 (March 2019), 61--67.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. H. Zhu. 2015. JFuzz: A tool for automated Java unit testing based on data mutation and metamorphic testing methods. In Proc. of The 2nd Int'l Conf. on Trustworthy Systems and Their Applications (TSA 2015). 8--15.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Zhu, I. Bayley, D. Liu, and X. Zheng. 2019. Morphy: A Datamorphic Software Test Automation Tool. Technical Report OBU-ECM-AFM-2019-01. School of Engineering, Computing and Mathematics, Oxford Brookes University, Oxford, UK. http://arxiv.org/abs/1912.09881Google ScholarGoogle Scholar
  18. H. Zhu, I. Bayley, D. Liu, and X. Zheng. 2020. Automation of Datamorphic Testing. In Proc. of 2nd IEEE International Conference on Artificial Intelligence Testing (AITest 2020). In Press.Google ScholarGoogle Scholar
  19. H. Zhu, P. Hall, and J. May. 1997. Software unit test coverage and adequacy. ACM Computing Survey 29, 4 (Dec. 1997), 366--427.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. H. Zhu, D. Liu, I. Bayley, R. Harrison, and F. Cuzzolin. 2018. Datamorphic Testing: A Methodology for Testing AI Applications. Technical Report OBU-ECM-AFM-2018-02. School of Engineering, Computing and Mathematics, Oxford Brookes University, Oxford OX33 1HX, UK. http://arxiv.org/abs/1912.04900Google ScholarGoogle Scholar
  21. H. Zhu, D. Liu, I. Bayley, R. Harrison, and F. Cuzzolin. 2019. Datamorphic Testing: A Method for Testing Intelligent Applications. In Proc. of The First IEEE International Conference on Artificial Intelligence Testing (AITest 2019). IEEE Computer Society, Los Alamitos, CA, USA, 149--156. https://doi.org/10.1109/AITest.2019.00018Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Exploratory Datamorphic Testing of Classification Applications

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          AST '20: Proceedings of the IEEE/ACM 1st International Conference on Automation of Software Test
          October 2020
          122 pages
          ISBN:9781450379571
          DOI:10.1145/3387903

          Copyright © 2020 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 7 October 2020

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed limited

          Upcoming Conference

          ICSE 2025

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader