A reinforcement learning based approach to automated testing of android applications

Thi Anh Tuyet Vuong, Shingo Takada

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Citations (Scopus)

Abstract

In recent years, researchers have actively proposed tools to automate testing for Android applications. Their techniques, however, still encounter major difficulties. First is the difficulty of achieving high code coverage because applications usually have a large number of possible combinations of operations and transitions, which makes testing all possible scenarios time-consuming and ineffective for large systems. Second is the difficulty of achieving a wide range of application functionalities, because some functionalities can only be reached through a specific sequence of events. Therefore they are tested less often in random testing. Facing these problems, we apply a reinforcement learning algorithm called Q-learning to take advantage of both random and model-based testing. A Q-learning agent interacts with the Android application, builds a behavioral model gradually and generates test cases based on the model. The agent explores the application in an optimal way that reveals as much functionalities of the application as possible. The exploration using Q-learning improves code coverage in comparison to random and model-based testing and is able to detect faults in applications under test.

Original languageEnglish
Title of host publicationA-TEST 2018 - Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, Co-located with FSE 2018
EditorsWishnu Prasetya, Tanja E.J. Vos, Tanja E.J. Vos, Getir Sinem
PublisherAssociation for Computing Machinery, Inc
Pages31-37
Number of pages7
ISBN (Electronic)9781450360531
DOIs
Publication statusPublished - 2018 Nov 5
Event9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, A-TEST 2018, co-located the 26th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2018 - Lake Buena Vista, United States
Duration: 2018 Nov 5 → …

Publication series

NameA-TEST 2018 - Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, Co-located with FSE 2018

Conference

Conference9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, A-TEST 2018, co-located the 26th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2018
CountryUnited States
CityLake Buena Vista
Period18/11/5 → …

Keywords

  • Android
  • Q-learning
  • Reinforcement learning
  • Test input generation

ASJC Scopus subject areas

  • Software

Fingerprint Dive into the research topics of 'A reinforcement learning based approach to automated testing of android applications'. Together they form a unique fingerprint.

  • Cite this

    Vuong, T. A. T., & Takada, S. (2018). A reinforcement learning based approach to automated testing of android applications. In W. Prasetya, T. E. J. Vos, T. E. J. Vos, & G. Sinem (Eds.), A-TEST 2018 - Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, Co-located with FSE 2018 (pp. 31-37). (A-TEST 2018 - Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation, Co-located with FSE 2018). Association for Computing Machinery, Inc. https://doi.org/10.1145/3278186.3278191