Automatic multi-platform Interaction testing for android using reinforcement learning
Mobile testing is a time-consuming and expensive task necessary to guarantee high-quality applications. Moreover, mobile apps have become increasingly oriented to multiple user and platform interactions. Test execution tools, as well as test generation tools, have been developed to automate this tas...
- Autores:
-
Pantoja Gómez, Camila
Díaz Suárez, Edgar Camilo
Rozo Benítez, Camilo Esteban
- Tipo de recurso:
- Trabajo de grado de pregrado
- Fecha de publicación:
- 2022
- Institución:
- Universidad de los Andes
- Repositorio:
- Séneca: repositorio Uniandes
- Idioma:
- eng
- OAI Identifier:
- oai:repositorio.uniandes.edu.co:1992/59282
- Acceso en línea:
- http://hdl.handle.net/1992/59282
- Palabra clave:
- Reinforcement learning
Android
Testing
Ingeniería
- Rights
- openAccess
- License
- Atribución 4.0 Internacional
Summary: | Mobile testing is a time-consuming and expensive task necessary to guarantee high-quality applications. Moreover, mobile apps have become increasingly oriented to multiple user and platform interactions. Test execution tools, as well as test generation tools, have been developed to automate this task. Among these, KrakenMobile 2.0 is the first open-source tool developed to enable automatic test execution supporting cross-device interaction. A new testing tool was developed, extending on KrakenMobile's multi-user interaction with automatic test generation using Reinforcement Learning techniques. The resulting tool, Smart Kraken, achieved better results in the training phase of one open-source application than another RL-based state-of-art tool for automated testing in Android, ARES. It achieved a cumulative method coverage of 47.81% over 118 episodes, showing an increase of over 20% compared with ARES. This improvement is mainly attributed to the design of the reward function. Finally, a multi-agent scenario was proposed seeking to draw upon its collaboration capabilities to improve multi-user interaction, though implementation was not finished. |
---|