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

Full description

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
id UNIANDES2_2adb67f9d0ee17f6a9ce64131768eb9a
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/59282
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.none.fl_str_mv Automatic multi-platform Interaction testing for android using reinforcement learning
title Automatic multi-platform Interaction testing for android using reinforcement learning
spellingShingle Automatic multi-platform Interaction testing for android using reinforcement learning
Reinforcement learning
Android
Testing
Ingeniería
title_short Automatic multi-platform Interaction testing for android using reinforcement learning
title_full Automatic multi-platform Interaction testing for android using reinforcement learning
title_fullStr Automatic multi-platform Interaction testing for android using reinforcement learning
title_full_unstemmed Automatic multi-platform Interaction testing for android using reinforcement learning
title_sort Automatic multi-platform Interaction testing for android using reinforcement learning
dc.creator.fl_str_mv Pantoja Gómez, Camila
Díaz Suárez, Edgar Camilo
Rozo Benítez, Camilo Esteban
dc.contributor.advisor.none.fl_str_mv Mojica Hanke, Anamaria Irmgard
Escobar Velásquez, Camilo Andrés
Linares Vásquez, Mario
dc.contributor.author.none.fl_str_mv Pantoja Gómez, Camila
Díaz Suárez, Edgar Camilo
Rozo Benítez, Camilo Esteban
dc.contributor.researchgroup.es_CO.fl_str_mv The Software Design Lab
dc.subject.keyword.none.fl_str_mv Reinforcement learning
Android
Testing
topic Reinforcement learning
Android
Testing
Ingeniería
dc.subject.themes.es_CO.fl_str_mv Ingeniería
description 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.
publishDate 2022
dc.date.accessioned.none.fl_str_mv 2022-07-28T15:31:36Z
dc.date.available.none.fl_str_mv 2022-07-28T15:31:36Z
dc.date.issued.none.fl_str_mv 2022-07-25
dc.type.es_CO.fl_str_mv Trabajo de grado - Pregrado
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.content.es_CO.fl_str_mv Text
dc.type.redcol.none.fl_str_mv http://purl.org/redcol/resource_type/TP
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/1992/59282
dc.identifier.instname.es_CO.fl_str_mv instname:Universidad de los Andes
dc.identifier.reponame.es_CO.fl_str_mv reponame:Repositorio Institucional Séneca
dc.identifier.repourl.es_CO.fl_str_mv repourl:https://repositorio.uniandes.edu.co/
url http://hdl.handle.net/1992/59282
identifier_str_mv instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
repourl:https://repositorio.uniandes.edu.co/
dc.language.iso.es_CO.fl_str_mv eng
language eng
dc.relation.references.es_CO.fl_str_mv A. Romdhana, A. Merlo, M. Ceccato, and P. Tonella, "Deep reinforcement learning for black-box testing of android apps," CoRR, vol. abs/2101.02636, 2021. arXiv: 2101.02636 (cit. on pp. v, 4, 8-11, 14, 16-18, 21-23, 29, 33).
A. Turner. "How many people have smartphones worldwide?" (2022), [Online]. Available: https://www.bankmycell.com/blog/how-many-phones-are-in-the-world#part-8 (cit. on p. 1).
M. Linares-Vásquez, K. Moran, and D. Poshyvanyk, "Continuous, evolutionary and large-scale: A new perspective for automated mobile app testing," in Proceedings - 2017 IEEE International Conference on Software Maintenance and Evolution, ICSME 2017, 2017 (cit. on p. 1).
M. Linares-Vásquez, C. Bernal-Cardenas, K. Moran, and D. Poshyvanyk, "How do Developers Test Android Applications?" In 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), Sep. 2017, pp. 613-622 (cit. on pp. 1, 2).
S. Pathy, S. Panda, and S. Baboo, "A REVIEW ON CODE COVERAGE ANALYSIS," vol. 6, no. 10, pp. 580-587, 2015 (cit. on p. 2).
T. A. T. Vuong and S. Takada, "A reinforcement learning based approach to automated testing of android applications," in Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation. New York, NY, USA: Association for Computing Machinery, 2018, 31-37 (cit. on pp. 2, 8-11, 16).
W. Ravelo-Méndez, C. Escobar-Vélasquez, and M. Linares-Vásquez, "Kraken 2.0: A platform-agnostic and cross-device interaction testing tool," 2021 (cit. on pp. 2, 5, 23).
JS Foundation, Appium, https://appium.io (cit. on p. 5).
R. Developers, Robotium, https://github.com/RobotiumTech/robotium, 2016 (cit. on p. 5).
Linares-Vásquez, Mario and Escobar-Velásquez, Camilo, End-2-end testing, https://miso-4208-labs.gitlab.io/book/chapter2/por-fin-e2e-testing.html (cit. on p. 5).
W. Ravelo-Méndez, C. Escobar-Vélasquez, and M. Linares-Vásquez, "Kraken-mobile: Cross-device interaction-based testing of android apps," in 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2019, pp. 410-413 (cit. on pp. 5, 23).
E. Collins, A. Neto, A. Vincenzi, and J. Maldonado, "Deep reinforcement learning based android application gui testing," in Brazilian Symposium on Software Engineering. New York, NY, USA: Association for Computing Machinery, 2021, 186-194 (cit. on pp. 5, 8-11, 14, 16).
D. Adamo, M. K. Khan, S. Koppula, and R. Bryce, "Reinforcement learning for android gui testing," in Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation. New York, NY, USA: Association for Computing Machinery, 2018, 2-8 (cit. on pp. 5, 8-11, 14, 16).
T. Gu, C. Cao, T. Liu, et al., "Aimdroid: Activity-insulated multi-level automated testing for android applications," in 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2017, pp. 103-114 (cit. on pp. 5, 6, 8-11).
K. Mao, M. Harman, and Y. Jia, "Sapienz: Multi-objective automated testing for android applications," in Proceedings of the 25th International Symposium on Software Testing and Analysis, ser. ISSTA 2016, Saarbrücken, Germany: Association for Computing Machinery, 2016, 94-105 (cit. on p. 5).
G. Bae, G. Rothermel, and D.-H. Bae, "Comparing model-based and dynamic event-extraction based gui testing techniques: An empirical study," Journal of Systems and Software, vol. 97, pp. 15-46, 2014 (cit. on pp. 5, 6).
R. S. Sutton and A. G. Barto, Reinforcement Learning: An Introduction, Second. The MIT Press, 2018 (cit. on pp. 6-8).
Y. Koroglu, A. Sen, O. Muslu, et al., "Qbe: Qlearning-based exploration of android applications," in 2018 IEEE 11th International Conference on Software Testing, Verification and Validation (ICST), 2018, pp. 105-115 (cit. on pp. 8-11).
M. Pan, A. Huang, G. Wang, T. Zhang, and X. Li, "Reinforcement learning based curiosity-driven testing of android applications," in Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis, ser. ISSTA 2020, Virtual Event, USA: Association for Computing Machinery, 2020, 153-164 (cit. on pp. 8-11, 15).
H. N. Yasin, S. H. A. Hamid, and R. J. Raja Yusof, "Droidbotx: Test case generation tool for android applications using q-learning," Symmetry, vol. 13, no. 2, 2021 (cit. on pp. 8-11, 16).
Y. Köroglu and A. Sen, "Reinforcement learning-driven test generation for android GUI applications using formal specifications," CoRR, vol. abs/1911.05403, 2019. arXiv: 1911.05403 (cit. on pp. 8, 10, 11, 16).
T. Vuong and S. Takada, "Semantic analysis for deep q-network in android gui testing," English, in Proceedings - SEKE 2019, ser. Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE, 31st International Conference on Software Engineering and Knowledge Engineering, SEKE 2019 ; Conference date: 10-07-2019 Through 12-07-2019, Knowledge Systems Institute Graduate School, Jan. 2019, pp. 123-128 (cit. on pp. 8-11, 16).
Z. Shen, K. Yang, Z. Xi, J. Zou, and W. Du, "Deepapp: A deep reinforcement learning framework for mobile application usage prediction," IEEE Transactions on Mobile Computing, pp. 1-1, 2021 (cit. on p. 9).
J. Eskonen, J. Kahles, and J. Reijonen, "Automating gui testing with image-based deep reinforcement learning," in 2020 IEEE International Conference on Autonomic Computing and Self-Organizing Systems (ACSOS), 2020, pp. 160-167 (cit. on pp. 9-11, 13).
D. Toyama, P. Hamel, A. Gergely, et al., "Androidenv: A reinforcement learning platform for android," CoRR, vol. abs/2105.13231, 2021. arXiv: 2105.13231 (cit. on pp. 9, 13).
J. N. Foerster, "Deep multi-agent reinforcement learning," Ph.D. dissertation, University of Oxford, 2018 (cit. on pp. 9, 17).
R. Lowe, Y. Wu, A. Tamar, et al., Multi-agent actor-critic for mixed cooperative-competitive environments, 2017 (cit. on pp. 9, 17, 18).
Sudowars, Sudowars, https://github.com/sudowars/sudowars, 2013 (cit. on pp. 15, 26).
E. Nam. "Understanding the levenshtein distance equation for beginners." (2019), [Online]. Available: https://medium.com/@ethannam/understanding-the-levenshtein-distance-equation-for-beginners-c4285a5604f0 (cit. on p. 15).
K. Gohrani. "Different types of distance metrics used in machine learning." (2019), [Online]. Available: https://medium.com/@kunal_gohrani/different-types-of-distance-metrics-used-in-machine-learning-e9928c5e26c7 (cit. on p. 15).
J. M. JensenII. "Damerau-levenshtein edit distance explained." (2018), [Online]. Available: https://www.lemoda.net/text-fuzzy/damerau-levenshtein (cit. on p. 15).
A. Kundu. "Jaro and jaro-winkler similarity." (2022), [Online]. Available: https://www.geeksforgeeks.org/jaro-and-jaro-winkler-similarity (cit. on p. 15).
M. Plappert, Keras-rl, https://github.com/keras-rl/keras-rl, 2016 (cit. on p. 16).
A. Raffin, A. Hill, A. Gleave, et al., "Stable-baselines3: Reliable reinforcement learning implementations," Journal of Machine Learning Research, vol. 22, no. 268, pp. 1-8, 2021 (cit. on p. 17).
O. Kaduri. "From a* to marl (part 5- multi-agent reinforcement learning)." (2021), [Online]. Available: https://omrikaduri.github.io/2021/08/07/Part-5-MARL.html (cit. on p. 17).
OpenAI, Maddpg, https://github.com/openai/maddpg, 2020 (cit. on p. 18).
OpenAI, Multi-agent particle environment, https://github.com/openai/multiagent-particle-envs, 2022 (cit. on p. 18).
G. Brockman, V. Cheung, L. Pettersson, et al., Openai gym, 2016 (cit. on p. 18).
A. Chow and B. Jiang, Octopus to the rescue: The fascinating world of inter-app communications at uber engineering, Uber Engineering, blog, 2015 [Online] (cit. on p. 23).
A. Romdhana, M. Ceccato, G. C. Georgiu, A. Merlo, and P. Tonella, "COSMO: Code Coverage Made Easier for Android," in 2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST), Porto de Galinhas, Brazil: IEEE, Apr. 2021, pp. 417-423 (cit. on p. 25).
The Software Design Lab, Instruapk, https://github.com/TheSoftwareDesignLab/InstruAPK, 2020 (cit. on p. 26).
The Software Design Lab, Mutapk, https://thesoftwaredesignlab.github.io/MutAPK (cit. on p. 26).
A. Romdhana, A. Merlo, M. Ceccato, and P. Tonella, Ares (fork), https://github.com/Cerozob/ARES/tree/pytorch-ares, 2022 (cit. on p. 28).
N. A. Lynnerup, L. Nolling, R. Hasle, and J. Hallam, A survey on reproducibility by evaluating deep reinforcement learning algorithms on real-world robots, 2019. arXiv: 1909.03772 [cs.LG] (cit. on p. 35).
Ray, Rllib: Industry-grade reinforcement learning, https://docs.ray.io/en/latest/rllib/index.html (cit. on pp. 36, 37).
dc.rights.license.spa.fl_str_mv Atribución 4.0 Internacional
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by/4.0/
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.spa.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Atribución 4.0 Internacional
http://creativecommons.org/licenses/by/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.es_CO.fl_str_mv 47 páginas
dc.format.mimetype.es_CO.fl_str_mv application/pdf
dc.publisher.es_CO.fl_str_mv Universidad de los Andes
dc.publisher.program.es_CO.fl_str_mv Ingeniería de Sistemas y Computación
dc.publisher.faculty.es_CO.fl_str_mv Facultad de Ingeniería
dc.publisher.department.es_CO.fl_str_mv Departamento de Ingeniería Sistemas y Computación
institution Universidad de los Andes
bitstream.url.fl_str_mv https://repositorio.uniandes.edu.co/bitstreams/e2ee001c-db30-441a-8e4a-c877161ebcfa/download
https://repositorio.uniandes.edu.co/bitstreams/f126c8b8-eaea-4324-bace-4b1ff779ef00/download
https://repositorio.uniandes.edu.co/bitstreams/7e37522e-7c11-499b-ade7-13f48462ade6/download
https://repositorio.uniandes.edu.co/bitstreams/55b5dd21-9d64-4fa6-b245-82e809579922/download
https://repositorio.uniandes.edu.co/bitstreams/8fccaba2-d84c-4c16-aa48-d3d18b24238e/download
https://repositorio.uniandes.edu.co/bitstreams/88662096-f9f4-48b2-9f72-747ea54c98cf/download
https://repositorio.uniandes.edu.co/bitstreams/3b0f47a6-bc60-4a6a-b719-a7e1d5a5ab80/download
https://repositorio.uniandes.edu.co/bitstreams/473f137d-7511-49df-bea8-a3358ebc7acc/download
https://repositorio.uniandes.edu.co/bitstreams/1fcbf7b8-ba67-45ab-a23d-2cc2be38ba60/download
https://repositorio.uniandes.edu.co/bitstreams/e55027d1-4533-4170-97e4-6016bf7f0698/download
https://repositorio.uniandes.edu.co/bitstreams/6f08334f-8c72-4a94-a78c-52e04cb428a0/download
bitstream.checksum.fl_str_mv 5aa5c691a1ffe97abd12c2966efcb8d6
e88260bf4679647ba319c0150bfbf170
2ccf5ba70037ae55958f0d1eb5b75cba
ac3074dfafd65f17bf6d7fb272a363f4
cfd0890b8eb243a4190c2e0d53f55dbc
4491fe1afb58beaaef41a73cf7ff2e27
4491fe1afb58beaaef41a73cf7ff2e27
30834f440fbdd97db8d988183de4c7a5
d3154e540cc95fa1f3a1bdee2c1993e2
ee61a0d207e67dd5ad65a40613c4bd4c
0175ea4a2d4caec4bbcc37e300941108
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio institucional Séneca
repository.mail.fl_str_mv adminrepositorio@uniandes.edu.co
_version_ 1812133813884551168
spelling Atribución 4.0 Internacionalhttp://creativecommons.org/licenses/by/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Mojica Hanke, Anamaria Irmgard422272bb-66e5-403c-9e3e-62fe260c2205600Escobar Velásquez, Camilo Andrés4955f607-fb9a-46dc-8b4e-e7618e9d3d3d600Linares Vásquez, Mariovirtual::1376-1Pantoja Gómez, Camila5910535f-d286-43ca-8a9f-46fbe4a43b4a600Díaz Suárez, Edgar Camilob2a85cb5-6954-46e9-b23d-5d3fd199bf84600Rozo Benítez, Camilo Estebanb4a0b6ab-11d7-4cbc-ad7e-1a705670276c600The Software Design Lab2022-07-28T15:31:36Z2022-07-28T15:31:36Z2022-07-25http://hdl.handle.net/1992/59282instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/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.Ingeniero de Sistemas y ComputaciónPregrado47 páginasapplication/pdfengUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería Sistemas y ComputaciónAutomatic multi-platform Interaction testing for android using reinforcement learningTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPReinforcement learningAndroidTestingIngenieríaA. Romdhana, A. Merlo, M. Ceccato, and P. Tonella, "Deep reinforcement learning for black-box testing of android apps," CoRR, vol. abs/2101.02636, 2021. arXiv: 2101.02636 (cit. on pp. v, 4, 8-11, 14, 16-18, 21-23, 29, 33).A. Turner. "How many people have smartphones worldwide?" (2022), [Online]. Available: https://www.bankmycell.com/blog/how-many-phones-are-in-the-world#part-8 (cit. on p. 1).M. Linares-Vásquez, K. Moran, and D. Poshyvanyk, "Continuous, evolutionary and large-scale: A new perspective for automated mobile app testing," in Proceedings - 2017 IEEE International Conference on Software Maintenance and Evolution, ICSME 2017, 2017 (cit. on p. 1).M. Linares-Vásquez, C. Bernal-Cardenas, K. Moran, and D. Poshyvanyk, "How do Developers Test Android Applications?" In 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), Sep. 2017, pp. 613-622 (cit. on pp. 1, 2).S. Pathy, S. Panda, and S. Baboo, "A REVIEW ON CODE COVERAGE ANALYSIS," vol. 6, no. 10, pp. 580-587, 2015 (cit. on p. 2).T. A. T. Vuong and S. Takada, "A reinforcement learning based approach to automated testing of android applications," in Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation. New York, NY, USA: Association for Computing Machinery, 2018, 31-37 (cit. on pp. 2, 8-11, 16).W. Ravelo-Méndez, C. Escobar-Vélasquez, and M. Linares-Vásquez, "Kraken 2.0: A platform-agnostic and cross-device interaction testing tool," 2021 (cit. on pp. 2, 5, 23).JS Foundation, Appium, https://appium.io (cit. on p. 5).R. Developers, Robotium, https://github.com/RobotiumTech/robotium, 2016 (cit. on p. 5).Linares-Vásquez, Mario and Escobar-Velásquez, Camilo, End-2-end testing, https://miso-4208-labs.gitlab.io/book/chapter2/por-fin-e2e-testing.html (cit. on p. 5).W. Ravelo-Méndez, C. Escobar-Vélasquez, and M. Linares-Vásquez, "Kraken-mobile: Cross-device interaction-based testing of android apps," in 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2019, pp. 410-413 (cit. on pp. 5, 23).E. Collins, A. Neto, A. Vincenzi, and J. Maldonado, "Deep reinforcement learning based android application gui testing," in Brazilian Symposium on Software Engineering. New York, NY, USA: Association for Computing Machinery, 2021, 186-194 (cit. on pp. 5, 8-11, 14, 16).D. Adamo, M. K. Khan, S. Koppula, and R. Bryce, "Reinforcement learning for android gui testing," in Proceedings of the 9th ACM SIGSOFT International Workshop on Automating TEST Case Design, Selection, and Evaluation. New York, NY, USA: Association for Computing Machinery, 2018, 2-8 (cit. on pp. 5, 8-11, 14, 16).T. Gu, C. Cao, T. Liu, et al., "Aimdroid: Activity-insulated multi-level automated testing for android applications," in 2017 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2017, pp. 103-114 (cit. on pp. 5, 6, 8-11).K. Mao, M. Harman, and Y. Jia, "Sapienz: Multi-objective automated testing for android applications," in Proceedings of the 25th International Symposium on Software Testing and Analysis, ser. ISSTA 2016, Saarbrücken, Germany: Association for Computing Machinery, 2016, 94-105 (cit. on p. 5).G. Bae, G. Rothermel, and D.-H. Bae, "Comparing model-based and dynamic event-extraction based gui testing techniques: An empirical study," Journal of Systems and Software, vol. 97, pp. 15-46, 2014 (cit. on pp. 5, 6).R. S. Sutton and A. G. Barto, Reinforcement Learning: An Introduction, Second. The MIT Press, 2018 (cit. on pp. 6-8).Y. Koroglu, A. Sen, O. Muslu, et al., "Qbe: Qlearning-based exploration of android applications," in 2018 IEEE 11th International Conference on Software Testing, Verification and Validation (ICST), 2018, pp. 105-115 (cit. on pp. 8-11).M. Pan, A. Huang, G. Wang, T. Zhang, and X. Li, "Reinforcement learning based curiosity-driven testing of android applications," in Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and Analysis, ser. ISSTA 2020, Virtual Event, USA: Association for Computing Machinery, 2020, 153-164 (cit. on pp. 8-11, 15).H. N. Yasin, S. H. A. Hamid, and R. J. Raja Yusof, "Droidbotx: Test case generation tool for android applications using q-learning," Symmetry, vol. 13, no. 2, 2021 (cit. on pp. 8-11, 16).Y. Köroglu and A. Sen, "Reinforcement learning-driven test generation for android GUI applications using formal specifications," CoRR, vol. abs/1911.05403, 2019. arXiv: 1911.05403 (cit. on pp. 8, 10, 11, 16).T. Vuong and S. Takada, "Semantic analysis for deep q-network in android gui testing," English, in Proceedings - SEKE 2019, ser. Proceedings of the International Conference on Software Engineering and Knowledge Engineering, SEKE, 31st International Conference on Software Engineering and Knowledge Engineering, SEKE 2019 ; Conference date: 10-07-2019 Through 12-07-2019, Knowledge Systems Institute Graduate School, Jan. 2019, pp. 123-128 (cit. on pp. 8-11, 16).Z. Shen, K. Yang, Z. Xi, J. Zou, and W. Du, "Deepapp: A deep reinforcement learning framework for mobile application usage prediction," IEEE Transactions on Mobile Computing, pp. 1-1, 2021 (cit. on p. 9).J. Eskonen, J. Kahles, and J. Reijonen, "Automating gui testing with image-based deep reinforcement learning," in 2020 IEEE International Conference on Autonomic Computing and Self-Organizing Systems (ACSOS), 2020, pp. 160-167 (cit. on pp. 9-11, 13).D. Toyama, P. Hamel, A. Gergely, et al., "Androidenv: A reinforcement learning platform for android," CoRR, vol. abs/2105.13231, 2021. arXiv: 2105.13231 (cit. on pp. 9, 13).J. N. Foerster, "Deep multi-agent reinforcement learning," Ph.D. dissertation, University of Oxford, 2018 (cit. on pp. 9, 17).R. Lowe, Y. Wu, A. Tamar, et al., Multi-agent actor-critic for mixed cooperative-competitive environments, 2017 (cit. on pp. 9, 17, 18).Sudowars, Sudowars, https://github.com/sudowars/sudowars, 2013 (cit. on pp. 15, 26).E. Nam. "Understanding the levenshtein distance equation for beginners." (2019), [Online]. Available: https://medium.com/@ethannam/understanding-the-levenshtein-distance-equation-for-beginners-c4285a5604f0 (cit. on p. 15).K. Gohrani. "Different types of distance metrics used in machine learning." (2019), [Online]. Available: https://medium.com/@kunal_gohrani/different-types-of-distance-metrics-used-in-machine-learning-e9928c5e26c7 (cit. on p. 15).J. M. JensenII. "Damerau-levenshtein edit distance explained." (2018), [Online]. Available: https://www.lemoda.net/text-fuzzy/damerau-levenshtein (cit. on p. 15).A. Kundu. "Jaro and jaro-winkler similarity." (2022), [Online]. Available: https://www.geeksforgeeks.org/jaro-and-jaro-winkler-similarity (cit. on p. 15).M. Plappert, Keras-rl, https://github.com/keras-rl/keras-rl, 2016 (cit. on p. 16).A. Raffin, A. Hill, A. Gleave, et al., "Stable-baselines3: Reliable reinforcement learning implementations," Journal of Machine Learning Research, vol. 22, no. 268, pp. 1-8, 2021 (cit. on p. 17).O. Kaduri. "From a* to marl (part 5- multi-agent reinforcement learning)." (2021), [Online]. Available: https://omrikaduri.github.io/2021/08/07/Part-5-MARL.html (cit. on p. 17).OpenAI, Maddpg, https://github.com/openai/maddpg, 2020 (cit. on p. 18).OpenAI, Multi-agent particle environment, https://github.com/openai/multiagent-particle-envs, 2022 (cit. on p. 18).G. Brockman, V. Cheung, L. Pettersson, et al., Openai gym, 2016 (cit. on p. 18).A. Chow and B. Jiang, Octopus to the rescue: The fascinating world of inter-app communications at uber engineering, Uber Engineering, blog, 2015 [Online] (cit. on p. 23).A. Romdhana, M. Ceccato, G. C. Georgiu, A. Merlo, and P. Tonella, "COSMO: Code Coverage Made Easier for Android," in 2021 14th IEEE Conference on Software Testing, Verification and Validation (ICST), Porto de Galinhas, Brazil: IEEE, Apr. 2021, pp. 417-423 (cit. on p. 25).The Software Design Lab, Instruapk, https://github.com/TheSoftwareDesignLab/InstruAPK, 2020 (cit. on p. 26).The Software Design Lab, Mutapk, https://thesoftwaredesignlab.github.io/MutAPK (cit. on p. 26).A. Romdhana, A. Merlo, M. Ceccato, and P. Tonella, Ares (fork), https://github.com/Cerozob/ARES/tree/pytorch-ares, 2022 (cit. on p. 28).N. A. Lynnerup, L. Nolling, R. Hasle, and J. Hallam, A survey on reproducibility by evaluating deep reinforcement learning algorithms on real-world robots, 2019. arXiv: 1909.03772 [cs.LG] (cit. on p. 35).Ray, Rllib: Industry-grade reinforcement learning, https://docs.ray.io/en/latest/rllib/index.html (cit. on pp. 36, 37).201712840201711727201820147Publicationhttps://scholar.google.es/citations?user=55fmMcoAAAAJvirtual::1376-10000-0003-0161-2888virtual::1376-10cbe51ff-e35a-4c3a-ad77-609b3cdfc9b2virtual::1376-10cbe51ff-e35a-4c3a-ad77-609b3cdfc9b2virtual::1376-1LICENSElicense.txtlicense.txttext/plain; charset=utf-81810https://repositorio.uniandes.edu.co/bitstreams/e2ee001c-db30-441a-8e4a-c877161ebcfa/download5aa5c691a1ffe97abd12c2966efcb8d6MD51ORIGINALAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdfAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdfArtículo principalapplication/pdf2544054https://repositorio.uniandes.edu.co/bitstreams/f126c8b8-eaea-4324-bace-4b1ff779ef00/downloade88260bf4679647ba319c0150bfbf170MD53Formato de autorizacio¿n y entrega de tesistrabajo de grado.pdfFormato de autorizacio¿n y entrega de tesistrabajo de grado.pdfHIDEapplication/pdf229979https://repositorio.uniandes.edu.co/bitstreams/7e37522e-7c11-499b-ade7-13f48462ade6/download2ccf5ba70037ae55958f0d1eb5b75cbaMD54Formato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdfFormato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdfHIDEapplication/pdf330944https://repositorio.uniandes.edu.co/bitstreams/55b5dd21-9d64-4fa6-b245-82e809579922/downloadac3074dfafd65f17bf6d7fb272a363f4MD55TEXTAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdf.txtAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdf.txtExtracted texttext/plain113521https://repositorio.uniandes.edu.co/bitstreams/8fccaba2-d84c-4c16-aa48-d3d18b24238e/downloadcfd0890b8eb243a4190c2e0d53f55dbcMD56Formato de autorizacio¿n y entrega de tesistrabajo de grado.pdf.txtFormato de autorizacio¿n y entrega de tesistrabajo de grado.pdf.txtExtracted texttext/plain1163https://repositorio.uniandes.edu.co/bitstreams/88662096-f9f4-48b2-9f72-747ea54c98cf/download4491fe1afb58beaaef41a73cf7ff2e27MD58Formato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdf.txtFormato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdf.txtExtracted texttext/plain1163https://repositorio.uniandes.edu.co/bitstreams/3b0f47a6-bc60-4a6a-b719-a7e1d5a5ab80/download4491fe1afb58beaaef41a73cf7ff2e27MD510THUMBNAILAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdf.jpgAutomatic Multi-platform Interaction Testing for Android Using Reinforcement Learning.pdf.jpgIM Thumbnailimage/jpeg4010https://repositorio.uniandes.edu.co/bitstreams/473f137d-7511-49df-bea8-a3358ebc7acc/download30834f440fbdd97db8d988183de4c7a5MD57Formato de autorizacio¿n y entrega de tesistrabajo de grado.pdf.jpgFormato de autorizacio¿n y entrega de tesistrabajo de grado.pdf.jpgIM Thumbnailimage/jpeg17531https://repositorio.uniandes.edu.co/bitstreams/1fcbf7b8-ba67-45ab-a23d-2cc2be38ba60/downloadd3154e540cc95fa1f3a1bdee2c1993e2MD59Formato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdf.jpgFormato de autorizacio¿n y entrega de tesistrabajo de grado - 2.pdf.jpgIM Thumbnailimage/jpeg16473https://repositorio.uniandes.edu.co/bitstreams/e55027d1-4533-4170-97e4-6016bf7f0698/downloadee61a0d207e67dd5ad65a40613c4bd4cMD511CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8908https://repositorio.uniandes.edu.co/bitstreams/6f08334f-8c72-4a94-a78c-52e04cb428a0/download0175ea4a2d4caec4bbcc37e300941108MD521992/59282oai:repositorio.uniandes.edu.co:1992/592822024-03-13 11:56:55.427http://creativecommons.org/licenses/by/4.0/open.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coWW8sIGVuIG1pIGNhbGlkYWQgZGUgYXV0b3IgZGVsIHRyYWJham8gZGUgdGVzaXMsIG1vbm9ncmFmw61hIG8gdHJhYmFqbyBkZSBncmFkbywgaGFnbyBlbnRyZWdhIGRlbCBlamVtcGxhciByZXNwZWN0aXZvIHkgZGUgc3VzIGFuZXhvcyBkZSBzZXIgZWwgY2FzbywgZW4gZm9ybWF0byBkaWdpdGFsIHkvbyBlbGVjdHLDs25pY28geSBhdXRvcml6byBhIGxhIFVuaXZlcnNpZGFkIGRlIGxvcyBBbmRlcyBwYXJhIHF1ZSByZWFsaWNlIGxhIHB1YmxpY2FjacOzbiBlbiBlbCBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIG8gZW4gY3VhbHF1aWVyIG90cm8gc2lzdGVtYSBvIGJhc2UgZGUgZGF0b3MgcHJvcGlvIG8gYWplbm8gYSBsYSBVbml2ZXJzaWRhZCB5IHBhcmEgcXVlIGVuIGxvcyB0w6lybWlub3MgZXN0YWJsZWNpZG9zIGVuIGxhIExleSAyMyBkZSAxOTgyLCBMZXkgNDQgZGUgMTk5MywgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MywgRGVjcmV0byA0NjAgZGUgMTk5NSB5IGRlbcOhcyBub3JtYXMgZ2VuZXJhbGVzIHNvYnJlIGxhIG1hdGVyaWEsIHV0aWxpY2UgZW4gdG9kYXMgc3VzIGZvcm1hcywgbG9zIGRlcmVjaG9zIHBhdHJpbW9uaWFsZXMgZGUgcmVwcm9kdWNjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSwgdHJhbnNmb3JtYWNpw7NuIHkgZGlzdHJpYnVjacOzbiAoYWxxdWlsZXIsIHByw6lzdGFtbyBww7pibGljbyBlIGltcG9ydGFjacOzbikgcXVlIG1lIGNvcnJlc3BvbmRlbiBjb21vIGNyZWFkb3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50by4gIAoKCkxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgZW1pdGUgZW4gY2FsaWRhZCBkZSBhdXRvciBkZSBsYSBvYnJhIG9iamV0byBkZWwgcHJlc2VudGUgZG9jdW1lbnRvIHkgbm8gY29ycmVzcG9uZGUgYSBjZXNpw7NuIGRlIGRlcmVjaG9zLCBzaW5vIGEgbGEgYXV0b3JpemFjacOzbiBkZSB1c28gYWNhZMOpbWljbyBkZSBjb25mb3JtaWRhZCBjb24gbG8gYW50ZXJpb3JtZW50ZSBzZcOxYWxhZG8uIExhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgaGFjZSBleHRlbnNpdmEgbm8gc29sbyBhIGxhcyBmYWN1bHRhZGVzIHkgZGVyZWNob3MgZGUgdXNvIHNvYnJlIGxhIG9icmEgZW4gZm9ybWF0byBvIHNvcG9ydGUgbWF0ZXJpYWwsIHNpbm8gdGFtYmnDqW4gcGFyYSBmb3JtYXRvIGVsZWN0csOzbmljbywgeSBlbiBnZW5lcmFsIHBhcmEgY3VhbHF1aWVyIGZvcm1hdG8gY29ub2NpZG8gbyBwb3IgY29ub2Nlci4gCgoKRWwgYXV0b3IsIG1hbmlmaWVzdGEgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwgeSBsYSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvcywgcG9yIGxvIHRhbnRvLCBsYSBvYnJhIGVzIGRlIHN1IGV4Y2x1c2l2YSBhdXRvcsOtYSB5IHRpZW5lIGxhIHRpdHVsYXJpZGFkIHNvYnJlIGxhIG1pc21hLiAKCgpFbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLiAKCg==