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