Automated testing of mobile applications: methodological foundations and a practical device farm solution

dc.contributor.advisor1Vincenzi, Auri Marcelo Rizzo
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/0611351138131709
dc.contributor.advisor1orcidhttps://orcid.org/0000-0001-5902-1672
dc.contributor.authorKuroishi, Pedro Henrique
dc.contributor.authorlatteshttp://lattes.cnpq.br/8528323478356675
dc.contributor.refereeEndo, Andre Takeshi
dc.contributor.refereeCamargo, Valter Vieira de
dc.contributor.refereeAbreu, Rui Filipe Lima Maranhão de
dc.contributor.refereeBulcão-Neto, Renato de Freitas
dc.contributor.refereeLatteshttp://lattes.cnpq.br/4221336619791961
dc.contributor.refereeLatteshttp://lattes.cnpq.br/6809743774407662
dc.contributor.refereeLatteshttp://orcid.org/0000-0003-3734-3157
dc.contributor.refereeLatteshttp://lattes.cnpq.br/5627556088346425
dc.date.accessioned2025-12-02T19:36:33Z
dc.date.issued2025-11-26
dc.description.abstractSoftware testing activities are essential in the software development life cycle since they help to find possible bugs before releasing the product for end users. Despite its importance, testing is still not widely applied when considering the mobile ecosystem. When testing a mobile application, it is essential to consider how to execute the tests (i.e., techniques, methods, approaches, tools, and frameworks) and where the tests run (i.e., on real devices, emulators, or in the cloud). Over the years, researchers and the industry have proposed various infrastructures to facilitate test execution. However, choosing the most suitable testing infrastructure depends on the application's scope, supported features, and the company's/user's needs. Moreover, there is still a need to explore ways to optimize testing for mobile applications.Objective: This thesis aims to provide an implementation of a solution capable of running tests on multiple devices, and these tests should validate the communication between the application and an external IoT device. Moreover, the second goal is to subsidize the testing process by providing an approach for test case generation and quality assessment. In both cases, we considered two hardware components of an Android device: Bluetooth and Location.Method: This thesis presents a different methodology comprising a collection of published and submitted work from the PhD, providing distinct contributions aligned with the defined research goals. Conclusion: During this PhD, we made solid contributions by providing means to enhance mobile application testing, focusing on the Android ecosystem. In this thesis, we presented four papers published in renowned Software Engineering journals and conferences, and one paper in the submission process. We expect that the results of this work will benefit not only the academic community but also practitioners.eng
dc.description.resumoSoftware testing activities are essential in the software development life cycle since they help to find possible bugs before releasing the product for end users. Despite its importance, testing is still not widely applied when considering the mobile ecosystem. When testing a mobile application, it is essential to consider how to execute the tests (i.e., techniques, methods, approaches, tools, and frameworks) and where the tests run (i.e., on real devices, emulators, or in the cloud). Over the years, researchers and the industry have proposed various infrastructures to facilitate test execution. However, choosing the most suitable testing infrastructure depends on the application's scope, supported features, and the company's/user's needs. Moreover, there is still a need to explore ways to optimize testing for mobile applications. Objective: This thesis aims to provide an implementation of a solution capable of running tests on multiple devices, and these tests should validate the communication between the application and an external IoT device. Moreover, the second goal is to subsidize the testing process by providing an approach for test case generation and quality assessment. In both cases, we considered two hardware components of an Android device: Bluetooth and Location.Method: This thesis presents a different methodology comprising a collection of published and submitted work from the PhD, providing distinct contributions aligned with the defined research goals. Conclusion: During this PhD, we made solid contributions by providing means to enhance mobile application testing, focusing on the Android ecosystem. In this thesis, we presented four papers published in renowned Software Engineering journals and conferences, and one paper in the submission process. We expect that the results of this work will benefit not only the academic community but also practitioners.
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)
dc.description.sponsorshipConselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq)
dc.description.sponsorshipId001
dc.description.sponsorshipId88887.888653/2023-00
dc.description.sponsorshipId141137/2021-5
dc.description.sponsorshipId140435/2025-5
dc.identifier.citationKUROISHI, Pedro Henrique. Automated testing of mobile applications: methodological foundations and a practical device farm solution. 2025. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2025. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/23123.por
dc.identifier.urihttps://hdl.handle.net/20.500.14289/23123
dc.language.isoeng
dc.publisherUniversidade Federal de São Carlos
dc.publisher.addressCampus São Carlos
dc.publisher.initialsUFSCar
dc.publisher.programPrograma de Pós-Graduação em Ciência da Computação - PPGCC
dc.relation.urihttps://doi.org/10.1109/ISSRE59848.2023.00078
dc.relation.urihttps://doi.org/10.1016/j.infsof.2023.107363
dc.relation.urihttps://doi.org/10.5753/sbes.2025.9878
dc.relation.urihttps://doi.org/10.1016/j.infsof.2024.107573
dc.rightsAttribution 3.0 Brazilen
dc.rights.urihttp://creativecommons.org/licenses/by/3.0/br/
dc.subjectMobile testingeng
dc.subjectMobile application testingeng
dc.subjectAndroideng
dc.subjectInfrastructureeng
dc.subjectTesting Infrastructureeng
dc.subjectDevice farmeng
dc.subjectLocal device farmeng
dc.subjectBluetootheng
dc.subjectLocationeng
dc.subjectTest generationeng
dc.subjectTest case generationeng
dc.subjectAutomated test generationeng
dc.subjectLLMeng
dc.subjectLarge language modelseng
dc.subjectMutation testingeng
dc.subjectSystematic studieseng
dc.subjectTertiary studyeng
dc.subjectMapping studyeng
dc.subjectAcademia-industryeng
dc.subject.cnpqCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO
dc.subject.ods9. Indústria, Inovação e Infraestrutura
dc.subject.ods4. Educação de Qualidade
dc.subject.ods17. Parcerias e Meios de Implementação
dc.titleAutomated testing of mobile applications: methodological foundations and a practical device farm solutioneng
dc.title.alternativeTeste automatizado de aplicações móveis: fundamentos metodológicos e uma solução prática de device farm
dc.typeTese

Arquivos

Pacote Original

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
thesis-pedro_final.pdf
Tamanho:
5.33 MB
Formato:
Adobe Portable Document Format