CFP last date
20 January 2025
Reseach Article

A System for GUI Testing of Android Apps with Multiple Activities

by Moheb R. Girgis, Bahgat A. Abdel Latef, Tahany Akl
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Volume 174 - Number 19
Year of Publication: 2021
Authors: Moheb R. Girgis, Bahgat A. Abdel Latef, Tahany Akl
10.5120/ijca2021921080

Moheb R. Girgis, Bahgat A. Abdel Latef, Tahany Akl . A System for GUI Testing of Android Apps with Multiple Activities. International Journal of Computer Applications. 174, 19 ( Feb 2021), 25-35. DOI=10.5120/ijca2021921080

@article{ 10.5120/ijca2021921080,
author = { Moheb R. Girgis, Bahgat A. Abdel Latef, Tahany Akl },
title = { A System for GUI Testing of Android Apps with Multiple Activities },
journal = { International Journal of Computer Applications },
issue_date = { Feb 2021 },
volume = { 174 },
number = { 19 },
month = { Feb },
year = { 2021 },
issn = { 0975-8887 },
pages = { 25-35 },
numpages = {9},
url = { https://ijcaonline.org/archives/volume174/number19/31786-2021921080/ },
doi = { 10.5120/ijca2021921080 },
publisher = {Foundation of Computer Science (FCS), NY, USA},
address = {New York, USA}
}
%0 Journal Article
%1 2024-02-07T00:22:34.311189+05:30
%A Moheb R. Girgis
%A Bahgat A. Abdel Latef
%A Tahany Akl
%T A System for GUI Testing of Android Apps with Multiple Activities
%J International Journal of Computer Applications
%@ 0975-8887
%V 174
%N 19
%P 25-35
%D 2021
%I Foundation of Computer Science (FCS), NY, USA
Abstract

The wide spread use of Android and the GUI-driven nature of its apps have risen the need for appropriate automated GUI testing techniques. This paper presents a proposed system for GUI testing of Android apps with multiple activities, which applies a model-based approach to capture the event-driven nature of Android apps. This approach comprises two phases: Modeling Phase and Test Evaluation Phase. In the modeling phase, for each activity in the app under test (AUT), an event sequence diagram (ESD) is built, which depicts the activity's events and possible transitions between them, and used to generate event sequences (test cases). In the test evaluation phase, certain event-based coverage criteria are employed to measure the adequacy of the generated test cases. The proposed system analyses the AUT, builds an ESD for each activity, and generates event sequences. It handles the event sequences explosion problem and discards any unacceptable event sequences. For each event sequence, the system generates a test script and a corresponding Robotium test class, and executes the AUT with it. The paper also presents a case study that illustrates the use of the proposed system for testing an Android app with multiple activities, and the results of the experiments that have been conducted to evaluate the system's ability to expose some GUI errors that may occur in Android apps.

References
  1. Amalfitano, D., Fasolino, A. R., Tramontana P. 2011. A GUI crawling-based technique for Android mobile application testing. In: Proceedings of the IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops (ICSTW ’11), 252–261. Berlin, Germany.
  2. Amalfitano, D., Fasolino, A. R., Tramontana, P., De Carmine, S., Memon, A. M. 2012. Using GUI ripping for automated testing of Android applications. In: IEEE/ACM International Conference on Automated Software Engineering, ASE’12, 258–261. Essen, Germany.
  3. Yang, W., Prasad, M. R., Xie, T.: A grey-box approach for automated GUI-model generation of mobile applications. In: Proceedings of the 16th International Conference on Fundamental Approaches to Software Engineering, FASE’13, 250–265. Rome, Italy, (2013).
  4. Azim, T., Neamtiu, I. 2013. Targeted and depth-first exploration for systematic testing of android apps. In: Proceedings of the ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA’13, 641–660. Indianapolis, IN, USA.
  5. Choi, W., Necula, G. C., Sen, K. 2013. Guided GUI testing of android apps with minimal restart and approximate learning. In: Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA’13, 623–640. Indianapolis, IN, USA.
  6. Amalfitano, D., Fasolino, A. R., Tramontana, P., Ta, B. D., Memon, A. M. 2015. MobiGUITAR: Automated Model-Based Testing of Mobile Apps. IEEE Software, 32(5), 53–59.
  7. Su, T., Meng, G., Chen, Y., Wu, K., Yang, W., Yao, Y., Pu, G., Liu, Y., Su, Z. 2017. Guided, Stochastic Model-Based GUI Testing of Android Apps. Symposium on the Foundations of Software Engineering (ESEC/FSE’17), pp. 245-256. Paderborn, Germany.
  8. Girgis, M. R., Abdel Latef, B. A., and Akl, T. 2020. A GUI Testing Strategy and Tool for Android Apps, International Journal of Computing, 19(3), 355 – 364.
  9. Android - Application Components, https://www. tutorialspoint.com/android/android_application_ components.htm, last accessed 2018/8/12.
  10. Android user interface testing with Robotium – Tutorial, http://www.vogella. com/tutorials/Robotium/article.html, last accessed 2018/9/20.
  11. Li, P., Huynh, T., Reformat, M., Miller, J. 2007. A practical approach to testing GUI systems. Empirical Software Engineering, 12(4), 331–357.
  12. Memon, A. M. 2001. A Comprehensive Framework for Testing Graphical User Interfaces. PhD Thesis, Department of Computer Science, University of Pittsburgh.
  13. Deng, L., Offutt, J., Ammann, P., Mirzaei, N. 2017. Mutation operators for testing Android apps. Information and Software Technology, 81, 154-168.
Index Terms

Computer Science
Information Sciences

Keywords

Android Apps GUI Testing Model-Based Testing Automated GUI Testing Tools Event-Based Coverage Criteria Robotium Test Framework.