Abstract
Smartphones are becoming more important in our everyday lives and it is increasingly common to perform critical tasks on these devices, such as making payments. For this reason, ensuring the quality of these applications is an important task. One way to do this is through software testing. However, the testing of these applications presents major challenges due to the wide variety of devices available in the market. In this context, automated testing gains more relevance. There are dynamic test approaches for testing mobile applications, but there are some challenges that need to be overcome for good results, such as, being able to explore the complete behaviour of the application (e.g., overcoming blocking points); choosing appropriate input data; testing dynamic behaviour; testing specific characteristics of mobile applications, such as specific forms of interaction, e.g., long press, and so on. This paper presents a dynamic exploration approach of Android mobile applications that aims to overcome some of the problems identified. During the exploration process, the algorithm builds a Finite State Machine where states are traversed screens and transitions between states describe events that allow moving from one screen to another. This approach is implemented as an extension of the iMPAcT tool. The approach is validated over real Google Play apps and the test coverage results achieved are presented, compared and discussed.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
References
Amalfitano, D., Fasolino, A., Tramontana, P., De Carmine, S., Memon, A.: Using GUI ripping for automated testing of Android applications. In: 2012 27th IEEE/ACM International Conference on Automated Software Engineering, pp. 258–261. IEEE (2012)
Amalfitano, D., Fasolino, A., Tramontana, P., Ta, B., Memon, A.: MobiGUITAR: automated model-based testing of mobile apps. IEEE Softw. 32(5), 53–59 (2015)
Anand, S., Naik, M., Harrold, M.J., Yang, H.: Automated concolic testing of smartphone apps. In: 20th ACM SIGSOFT International Symposium on the Foundations of Software Engineering, pp. 599–609. ACM (2012)
Azim, T., Neamtiu, I.: Targeted and depth-first exploration for systematic testing of Android apps. In: 2013 28th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 641–660. ACM (2013)
Baek, Y.M., Bae, D.H.: Automated model-based Android GUI testing using multi-level GUI comparison criteria. In: 2016 31st IEEE/ACM International Conference on Automated Software Engineering, pp. 238–249. ACM (2016)
Hao, S., Liu, B., Nath, S., Halfond, W.G.J., Govindan, R.: PUMA: programmable UI-automation for large-scale dynamic analysis of mobile apps. In: Proceedings of the 12th Annual International Conference on Mobile Systems, Applications, and Services, pp. 204–217. ACM (2014)
Machiry, A., Tahiliani, R., Naik, M.: Dynodroid: an input generation system for Android apps. In: 2013 9th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, pp. 224–234. ACM (2013)
Morgado, I.C., Paiva, A.C.R., Faria, J.P.: Automated pattern-based testing of mobile applications. In: 2014 9th International Conference on the Quality of Information and Communications Technology, pp. 294–299. IEEE (2014)
Morgado, I., Paiva, A.: The iMPAcT tool: testing UI patterns on mobile applications. In: Proceedings - 2015 30th IEEE/ACM International Conference on Automated Software Engineering, pp. 876–881. IEEE (2015)
Morgado, I., Paiva, A.: Impact of execution modes on finding android failures. Procedia Comput. Sci. 83, 284–291 (2016)
Morgado, I., Paiva, A.: Mobile GUI testing. Software Qual. J. 26(4), 1553–1570 (2018)
Morgado, I.C., Paiva, A.C.R.: The iMPAcT tool for Android testing. Proc. ACM Hum.-Comput. Interact. (EICS) 3, 4:1–4:23 (2019)
Morgado, I.C., Paiva, A.C.: Testing approach for mobile applications through reverse engineering of UI patterns. In: Proceedings - 2015 30th IEEE/ACM International Conference on Automated Software Engineering Workshops, pp. 42–49. IEEE (2015)
Paiva, A.C.R., Gouveia, J.M.E.P., Elizabeth, J., Delamaro, M.E.: Testing when mobile apps go to background and come back to foreground. In: 2019 IEEE International Conference on Software Testing, Verification and Validation Workshops, pp. 102–111 (2019)
Salihu, I.A., Ibrahim, R., Ahmed, B.S., Zamli, K.Z., Usman, A.: AMOGA: a static-dynamic model generation strategy for mobile apps testing. IEEE Access 7, 17158–17173 (2019)
Choi, W., Necula, G., Sen, K.: Guided GUI testing of Android apps with minimal restart and approximate learning. ACM SIGPLAN Not. 48(10), 623–639 (2013)
Yang, W., Prasad, M.R., Xie, T.: A grey-box approach for automated GUI-model generation of mobile applications. In: Cortellessa, V., Varró, D. (eds.) FASE 2013. LNCS, vol. 7793, pp. 250–265. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-37057-1_19
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Ferreira, J., Paiva, A.C.R. (2019). Android Testing Crawler. In: Piattini, M., Rupino da Cunha, P., GarcÃa RodrÃguez de Guzmán, I., Pérez-Castillo, R. (eds) Quality of Information and Communications Technology. QUATIC 2019. Communications in Computer and Information Science, vol 1010. Springer, Cham. https://doi.org/10.1007/978-3-030-29238-6_23
Download citation
DOI: https://doi.org/10.1007/978-3-030-29238-6_23
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-29237-9
Online ISBN: 978-3-030-29238-6
eBook Packages: Computer ScienceComputer Science (R0)