Automatic GUI testing for android using reinforcement learning

The developers focus on testing applications, which can be a time-consuming task. To address this issue, we developed AgentDroid, a tool that utilizes reinforcement learning techniques to automate test execution. So far, the results have been impressive, outperforming state-of-the-art RL-based autom...

Full description

Autores:
Valbuena Bautista, Daniel
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2023
Institución:
Universidad de los Andes
Repositorio:
Séneca: repositorio Uniandes
Idioma:
eng
OAI Identifier:
oai:repositorio.uniandes.edu.co:1992/64317
Acceso en línea:
http://hdl.handle.net/1992/64317
Palabra clave:
Reinforcement learning
Testing
Android
Ingeniería
Rights
openAccess
License
Atribución 4.0 Internacional
Description
Summary:The developers focus on testing applications, which can be a time-consuming task. To address this issue, we developed AgentDroid, a tool that utilizes reinforcement learning techniques to automate test execution. So far, the results have been impressive, outperforming state-of-the-art RL-based automated testing tools for Android, such as ARES. In fact, AgentDroid achieved a 20% improvement in cumulative coverage compared to ARES. However, its effectiveness has only been evaluated on a single application, making it challenging to find compatible apps for testing. To address this, we tested 61 open-source apps and successfully executed 11 to verify that the tool's performance was consistent. During this experimentation, we also identified and corrected bugs in the tool, improved error detection, and generated code coverage reports at the package, class, and method levels.