• JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
  • JoomlaWorks Simple Image Rotator
 
  Bookmark and Share
 
 
Doctoral Thesis
DOI
https://doi.org/10.11606/T.55.2022.tde-03062022-162453
Document
Author
Full name
Eliane Figueiredo Collins Ribeiro
Institute/School/College
Knowledge Area
Date of Defense
Published
São Carlos, 2022
Supervisor
Committee
Maldonado, José Carlos (President)
Batista, Thais Vasconcelos
Kalinowski, Marcos
Souza, Simone do Rocio Senger de
Title in English
DeepRLGUIMAT: Deep Reinforcement Learning-based GUI Mobile Application Testing Approach
Keywords in English
Automated testing
Mobile application Testing
Reinforcement learning
Abstract in English
The constant advances in mobile computing technologies and the market demand for new products and applications that serve an increasingly broad audience represent an opportunity and a need to reflect on how to guarantee the quality of these mobile applications, as well as software testing important and fundamental for these applications. Research in this area has been increasingly needed because it serves as evidence of system quality. However, mobile applications have some characteristics and limitations such as the amount of memory to use, battery life, amount of input data, mobile device screen size and different operating systems. The testing tools available are still limited in the testing strategies and criteria they support. Considering the growth in the use of these applications and the challenges that test automation faces, such as many possible combinations of operations, transitions, functionality coverage, interface element changes and fault reproduction, research to overcome these difficulties is encouraged. Thus, studies of Artificial Intelligence techniques, such as Reinforcement Learning, emerge as an opportunity to improve this area for the generation of test cases through the exploration of applications. Objective: This work proposes the DeepRLGUIMAT approach, which uses the technique of deep reinforcement learning, Deep Q-Network algorithm to generate test cases through the exploration of the mobile application using trial and error, producing a variety of input test data according to the Systematic Functional Testing method and following the probability distribution to satisfy the purpose of covering application functionality. Method: An investigation was carried out in the technical literature through a systematic mapping to know the main studies in this area. The approach was designed and developed based on the information acquired, built a tool for concept proof to execute the elaborated strategy. Finally, empirical experiments were carried out in 30 mobile applications. A comparison was made with similar approaches in the literature (tools with Monkey random approach, Model-based approach with Droidbot Machine Learning, and approaches that use DroidbotX reinforcement machine learning and Q-testing) in terms of code coverage metrics, found flaws, and feature coverage. Results: It was observed that the proposed approach achieved greater value for code coverage in instruction, branches, lines of code and methods compared to state-of-the-art tools. The tool achieved the same result as state-of-the-art tools in terms of failures and crashes encountered. The proposed approach exercised more functional operations than the compared tools in functionality coverage. Conclusion: The proposed approach showed promising results, being more effective for navigation and executing operations in applications, generating useful and effective tests that exercise data entry variations that facilitate the coverage of mobile application functionalities and with greater possibilities of identifying the presence of errors/failures.
Title in Portuguese
DeepRLGUIMAT: Abordagem de Aprendizado de Máquina Profundo por Esforço Aplicado a Testes de GUI de Aplicações Móveis
Keywords in Portuguese
Aprendizado de máquina por reforço
Automação de testes
Teste de aplicações móveis
Abstract in Portuguese
Contexto: Os constantes avanços nas tecnologias de computação móvel e a demanda do mercado por novos produtos e aplicativos que atendam a um público cada vez mais amplo representam uma oportunidade e a necessidade de refletir sobre como garantir a qualidade desses aplicativos móveis, sendo também o teste de software para esses aplicativos importante e fundamental. A pesquisa nesta área tem sido cada vez mais necessária porque serve como evidência de qualidade do sistema. No entanto, aplicativos móveis têm algumas características e limitações, como a quantidade de memória a ser usada, a vida útil da bateria, a quantidade de dados de entrada, o tamanho da tela do dispositivo móvel e os diferentes sistemas operacionais. As ferramentas de teste disponíveis são ainda limitadas nas estratégias e critérios de de teste que apóiam. Considerando o crescimento do uso desses aplicativos e os desafios que a automação de teste enfrenta, como muitas combinações de operações, transições, cobertura de funcionalidade, mudanças de elementos de interface e reprodução de falhas, pesquisas para contornar essas dificuldades são encorajadas. Com isso, estudos de técnicas de Inteligência Artificial, como Aprendizado de Máquina por Reforço, surgem como uma oportunidade de aprimorar esta área para geração de casos de teste por meio da exploração de aplicativos. Objetivo: Este trabalho propõe a abordagem DeepRLGUIMAT que utiliza a técnica de aprendizado por reforço profundo, com o algoritmo Deep Q-Network para gerar casos de teste por meio da exploração do aplicativo móvel utilizando tentativa e erro, produzindo uma variedade de dados de teste de entrada de acordo com o método de Testes Funcionais Sistemáticos e seguindo a probabilidade distribuição para satisfazer o propósito de cobrir funcionalidades da aplicação. Método: Foi conduzida uma investigação na literatura técnica por meio de um mapeamento sistemático para conhecer os principais estudos na área. Com base nas informações adquiridas a abordagem foi elaborada e desenvolvida por meio de uma ferramenta para prova de conceito para executar a estratégia elaborada em aplicações Android. Por fim foram conduzidos experimentos empíricos em 30 aplicações móveis e feita comparação com abordagens similares na literatura (ferramentas com abordagem randômica Monkey, abordagem Model-based com Aprendizado de Máquina Droidbot, e as abordagens que usam aprendizado de máquina por reforço DroidbotX e Q-testing) em termos de métricas de cobertura de código, falhas encontradas e cobertura de funcionalidades. Resultados: Foram observados que a abordagem proposta atingiu maior valor para cobertura de código em instrução, branches, linhas de código e métodos em comparação com as ferramentas de estado da arte. Em termos de falhar e travamentos encontrados, a ferramenta obteve resultado igual ao das ferramentas de estado da arte. Em cobertura de funcionalidade, a abordagem proposta exercitou mais operações funcionais em comparação com as ferramentas comparadas. Conclusão:A abordagem proposta mostrou resultados promissores sendo mais efetiva para navegação e em executar operações nas aplicações, gerando testes úteis e efetivos que exercitam a variações de entrada de dados que facilitam a cobertura de funcionalidades de aplicações móveis e com maior possibilidades de indentificar a presenção de erros/falhas.
 
WARNING - Viewing this document is conditioned on your acceptance of the following terms of use:
This document is only for private use for research and teaching activities. Reproduction for commercial use is forbidden. This rights cover the whole data about this document as well as its contents. Any uses or copies of this document in whole or in part must include the author's name.
Publishing Date
2022-06-03
 
WARNING: Learn what derived works are clicking here.
All rights of the thesis/dissertation are from the authors
CeTI-SC/STI
Digital Library of Theses and Dissertations of USP. Copyright © 2001-2024. All rights reserved.