Skip to main content

Android Testing Crawler

  • Conference paper
  • First Online:
Quality of Information and Communications Technology (QUATIC 2019)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://www.appbrain.com/stats/number-of-android-apps.

  2. 2.

    https://www.statista.com/statistics/271644/worldwide-free-and-paid-mobile-app-store-downloads/.

  3. 3.

    https://developer.android.com/training/testing/espresso.

  4. 4.

    https://developer.android.com/training/testing/ui-automator.

  5. 5.

    https://github.com/RobotiumTech/robotium.

  6. 6.

    https://appium.io.

  7. 7.

    https://developer.android.com/studio/test/monkey/.

  8. 8.

    https://developer.android.com/docs/quality-guidelines/core-app-quality.

References

  1. 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)

    Google Scholar 

  2. 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)

    Article  Google Scholar 

  3. 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)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. 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)

    Google Scholar 

  7. 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)

    Google Scholar 

  8. 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)

    Google Scholar 

  9. 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)

    Google Scholar 

  10. Morgado, I., Paiva, A.: Impact of execution modes on finding android failures. Procedia Comput. Sci. 83, 284–291 (2016)

    Article  Google Scholar 

  11. Morgado, I., Paiva, A.: Mobile GUI testing. Software Qual. J. 26(4), 1553–1570 (2018)

    Article  Google Scholar 

  12. 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)

    Google Scholar 

  13. 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)

    Google Scholar 

  14. 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)

    Google Scholar 

  15. 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)

    Article  Google Scholar 

  16. 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)

    Article  Google Scholar 

  17. 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

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ana C. R. Paiva .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics