skip to main content
10.1145/3571473.3571485acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbqsConference Proceedingsconference-collections
research-article

A thematic synthesis on the adoption of regression testing techniques in Android projects

Published:27 January 2023Publication History

ABSTRACT

In software testing, employing regression techniques is a viable strategy to deal with the complexity and the constant evolution of applications since its primary goal is to ensure that changes made between versions do not change the system’s behavior. Although the literature has dedicated efforts to developing new regression testing techniques suitable for the Android mobile platform, studies are limited concerning demonstrating which techniques software developers employ in practice. This study aims to report on a thematic synthesis of adopting regression testing techniques in Android projects. The research encompassed four stages: (i) conducting a structured literature review on regression testing techniques for the Android platform, (ii) carrying out an expert survey, (iii) conducting interviews with industry professionals, and (iv) building a thematic synthesis. The thematic synthesis presented a model from analyzing the results obtained in this multimethod study on regression testing techniques. With such a study, we could present empirical evidence on how professionals perform regression testing in Android projects, identify the commonly used regression testing techniques, and leverage the requirements for automating Android applications through regression testing.

References

  1. Nauman Bin Ali, Emelie Engström, Masoumeh Taromirad, Mohammad Reza Mousavi, Nasir Mehmood Minhas, Daniel Helgesson, Sebastian Kunze, and Mahsa Varshosaz. 2019. On the search for industry-relevant regression testing research. Empir. Softw. Eng. 24, 4 (2019), 2020–2055.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Domenico Amalfitano, Anna Rita Fasolino, and Porfirio Tramontana. 2011. A GUI Crawling-Based Technique for Android Mobile Application Testing. In Fourth IEEE International Conference on Software Testing, Verification and Validation, ICST. IEEE Computer Society, Berlin, Germany, 252–261.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Paul Ammann and Jeff Offutt. 2008. Introduction to Software Testing. Cambridge University Press, Shaftesbury Road, UK.Google ScholarGoogle Scholar
  4. Hilary Arksey and Lisa O’Malley. 2005. Scoping studies: towards a methodological framework. International Journal of Social Research Methodology 8, 1(2005), 19–32.Google ScholarGoogle ScholarCross RefCross Ref
  5. Sebastian Bauersfeld. 2013. GUIdiff - A Regression Testing Tool for Graphical User Interfaces. In Sixth IEEE International Conference on Software Testing, Verification and Validation, ICST. IEEE Computer Society, Washington, DC, 499–500.Google ScholarGoogle Scholar
  6. Nana Chang, Linzhang Wang, Yu Pei, Subrota K. Mondal, and Xuandong Li. 2018. Change-Based Test Script Maintenance for Android Apps. In 2018 IEEE International Conference on Software Quality, Reliability and Security, QRS. IEEE, Washington, DC, 215–225.Google ScholarGoogle Scholar
  7. Wontae Choi, Koushik Sen, George C. Necula, and Wenyu Wang. 2018. DetReduce: minimizing Android GUI test suites for regression testing. In 40th International Conference on Software Engineering, ICSE, Michel Chaudron, Ivica Crnkovic, Marsha Chechik, and Mark Harman (Eds.). ACM, New York, NY, USA, 445–455.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Shauvik Roy Choudhary, Alessandra Gorla, and Alessandro Orso. 2015. Automated Test Input Generation for Android: Are We There Yet? (E). In 30th IEEE/ACM International Conference on Automated Software Engineering, ASE, Myra B. Cohen, Lars Grunske, and Michael Whalen (Eds.). IEEE Computer Society, Washington, DC, 429–440.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Daniela S. Cruzes and Tore Dybå. 2010. Synthesizing evidence in software engineering research. In Proceedings of the International Symposium on Empirical Software Engineering and Measurement, ESEM, Giancarlo Succi, Maurizio Morisio, and Nachiappan Nagappan (Eds.). ACM, New York, NY, United States, 1–10.Google ScholarGoogle Scholar
  10. Daniela S. Cruzes and Tore Dybå. 2011. Recommended Steps for Thematic Synthesis in Software Engineering. In Proceedings of the 5th International Symposium on Empirical Software Engineering and Measurement, ESEM. IEEE Computer Society, Washington, DC, 275–284.Google ScholarGoogle Scholar
  11. Daniela S. Cruzes and Tore Dybå. 2011. Research synthesis in software engineering: A tertiary study. Inf. Softw. Technol. 53, 5 (2011), 440–455.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Marcio Eduardo Delamaro, Jose Carlos Maldonado, and Mario. Jino. 2007. Introdução ao teste de software. Elsevier, Rio de Janeiro, RJ, Brasil.Google ScholarGoogle Scholar
  13. Quan Chau Dong Do, Guowei Yang, Meiru Che, Darren Hui, and Jefferson Ridgeway. 2016. Redroid: A Regression Test Selection Approach for Android Applications. In The 28th International Conference on Software Engineering and Knowledge Engineering, SEKE, Jerry Gou (Ed.). KSI, Pittsburgh, PA, 486–491.Google ScholarGoogle Scholar
  14. Emelie Engström, Per Runeson, and Mats Skoglund. 2010. A systematic review on regression test selection techniques. Information and Software Technology 52, 1 (2010), 14 – 30.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. N. Glauber. 2019. Dominando o Android com Kotlin. NOVATEC, Sao Paulo - SP.Google ScholarGoogle Scholar
  16. María Gómez, Romain Rouvoy, Bram Adams, and Lionel Seinturier. 2016. Mining test repositories for automatic detection of UI performance regressions in Android apps. In Proceedings of the 13th International Conference on Mining Software Repositories, MSR, Miryung Kim, Romain Robbes, and Christian Bird (Eds.). ACM, New York, NY, USA, 13–24.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Todd L. Graves, Mary Jean Harrold, Jung-Min Kim, Adam Porter, and Gregg Rothermel. 2001. An Empirical Study of Regression Test Selection Techniques. ACM Trans. Softw. Eng. Methodol. 10, 2 (2001), 184–208.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Tor-Morten Grønli and Gheorghita Ghinea. 2016. Meeting Quality Standards for Mobile Application Development in Businesses: A Framework for Cross-Platform Testing. In 49th Hawaii International Conference on System Sciences, HICSS, Tung X. Bui and Ralph H. Sprague Jr. (Eds.). IEEE Computer Society, Washington, DC, 5711–5720.Google ScholarGoogle Scholar
  19. Rashina Hoda. 2021. Socio-Technical Grounded Theory for Software Engineering. CoRR 0(2021), 0.Google ScholarGoogle Scholar
  20. Yongjian Hu and Iulian Neamtiu. 2016. VALERA: an effective and efficient record-and-replay tool for android. In Proceedings of the International Conference on Mobile Software Engineering and Systems, MOBILESoft. ACM, New York, NY, USA, 285–286.Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. IEEE. 1990. IEEE Standard Glossary of Software Engineering Terminology. IEEE Std 610.12-1990 0, 0 (Dec 1990), 1–84.Google ScholarGoogle Scholar
  22. IEEE. 1998. IEEE Standard for Software Maintenance. IEEE Std 1219-1998 0, 0 (1998), 1–56.Google ScholarGoogle Scholar
  23. Ajay Kumar Jha, Deok Yeop Kim, and Woo Jin Lee. 2019. A framework for testing Android apps by reusing test cases. In Proceedings of the 6th International Conference on Mobile Software Engineering and Systems, MOBILESoft@ICSE, Eli Tilevich (Ed.). IEEE / ACM, Washington, DC, 20–24.Google ScholarGoogle ScholarCross RefCross Ref
  24. Bo Jiang, Yu Wu, Yongfei Zhang, Zhenyu Zhang, and W.K. Chan. 2018. ReTestDroid: Towards Safer Regression Test Selection for Android Application. In 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC), Vol. 01. IEEE, Washington, DC, 235–244.Google ScholarGoogle Scholar
  25. Mark Kasunic. 2005. Designing an Effective Survey. Handbook CMU/SEI-2005-HB-004. CMU-SEI, Pittsburgh, PA, USA. CMU/SEI-2005-HB-004.Google ScholarGoogle Scholar
  26. Rafaqat Kazmi, Dayang Jawawi, Radziah Mohamad, and Imran Ghani. 2017. Effective Regression Test Case Selection: A Systematic Literature Review. Comput. Surveys 50(2017), 1–32.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Barbara A. Kitchenham and Shari Lawrence Pfleeger. 2002. Principles of survey research part 2: designing a survey. ACM SIGSOFT Softw. Eng. Notes 27, 1 (2002), 18–20.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Pavneet Singh Kochhar, Ferdian Thung, Nachiappan Nagappan, Thomas Zimmermann, and David Lo. 2015. Understanding the Test Automation Culture of App Developers. In 8th IEEE International Conference on Software Testing, Verification and Validation, ICST. IEEE Computer Society, Washington, DC, 1–10.Google ScholarGoogle Scholar
  29. Pingfan Kong, Li Li, Jun Gao, Kui Liu, Tegawendé F. Bissyandé, and Jacques Klein. 2019. Automated Testing of Android Apps: A Systematic Literature Review. IEEE Trans. Reliab. 68, 1 (2019), 45–66.Google ScholarGoogle ScholarCross RefCross Ref
  30. Xiao Li, Nana Chang, Yan Wang, Haohua Huang, Yu Pei, Linzhang Wang, and Xuandong Li. 2017. ATOM: Automatic Maintenance of GUI Test Scripts for Evolving Mobile Applications. In 2017 IEEE International Conference on Software Testing, Verification and Validation, ICST. IEEE Computer Society, Washington, DC, 161–171.Google ScholarGoogle Scholar
  31. Sara Mendes Oliveira Lima, Denivan Campos, and Ivan Machado. 2022. A thematic synthesis on the adoption of regression testing techniques in Android projects. Zenodo. https://doi.org/10.5281/zenodo.7121478Google ScholarGoogle ScholarCross RefCross Ref
  32. Sara Mendes Oliveira Lima, Denivan Campos, Larissa Rocha Soares, and Ivan Machado. 2020. Unveiling Practitioners Awareness of Android Apps Regression Testing through an Expert Survey. In Proceedings of the 34th Brazilian Symposium on Software Engineering (Natal, Brazil) (SBES ’20), Everton Cavalcante, Francisco Dantas, and Thaís Batista (Eds.). Association for Computing Machinery, New York, NY, USA, 303–308.Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Tom Mens and Serge Demeyer (Eds.). 2008. Software Evolution. Springer, New York, NY, USA.Google ScholarGoogle Scholar
  34. Luciana Carla Lins Prates. 2015. Aplicando Síntese Temática em Engenharia de Software. Master’s thesis. Universidade Federal da Bahia, Salvador.Google ScholarGoogle Scholar
  35. Simone Romano, Giuseppe Scanniello, Giuliano Antoniol, and Alessandro Marchetto. 2018. SPIRITuS: a SimPle Information Retrieval regressIon Test Selection approach. Information and Software Technology 99 (2018), 62 – 80.Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Gregg Rothermel, Roland H. Untch, Chengyun Chu, and Mary Jean Harrold. 2001. Prioritizing Test Cases For Regression Testing. IEEE Trans. Software Eng. 27, 10 (2001), 929–948.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Csaba Szabó, Ladislav Samuelis, Mirjana Ivanovic, and Tomás Fesic. 2012. Database refactoring and regression testing of Android mobile applications. In 10th IEEE Jubilee International Symposium on Intelligent Systems and Informatics, SISY. IEEE, Washington, DC, 135–139.Google ScholarGoogle ScholarCross RefCross Ref
  38. W. Eric Wong, Joseph Robert Horgan, Saul London, and Aditya P. Mathur. 1995. Effect of Test Set Minimization on Fault Detection Effectiveness. In 17th International Conference on Software Engineering, Seattle, Washington, USA, April 23-30, 1995, Proceedings, Dewayne E. Perry, Ross Jeffery, and David Notkin (Eds.). ACM, New York, NY, USA, 41–50.Google ScholarGoogle Scholar
  39. Shin Yoo and Mark Harman. 2012. Regression testing minimization, selection and prioritization: a survey. Softw. Test. Verification Reliab. 22, 2 (2012), 67–120.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A thematic synthesis on the adoption of regression testing techniques in Android projects
        Index terms have been assigned to the content through auto-classification.

        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
        • Article Metrics

          • Downloads (Last 12 months)38
          • Downloads (Last 6 weeks)2

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        HTML Format

        View this article in HTML Format .

        View HTML Format