Skip navigation
Universidade Federal da Bahia |
Repositório Institucional da UFBA
Use este identificador para citar ou linkar para este item: https://repositorio.ufba.br/handle/ri/33621
Registro completo de metadados
Campo DCValorIdioma
dc.contributor.advisorMachado, Ivan do Carmo-
dc.contributor.authorSantana, Railana dos Santos-
dc.creatorSantana, Railana dos Santos-
dc.date.accessioned2021-06-22T17:23:05Z-
dc.date.available2021-06-22T17:23:05Z-
dc.date.issued2021-06-22-
dc.date.submitted2020-07-03-
dc.identifier.urihttp://repositorio.ufba.br/ri/handle/ri/33621-
dc.description.abstractTeste de unidade é um tipo específico de teste que lida com as menores unidades do sistema. Ele representa o primeiro teste após a implementação do componente. Quando a implementação dos testes de unidade não segue boas práticas, é provável que anti-padrões sejam introduzidos no código. Anti-padrões nos testes, também conhecidos como test smells, são más decisões para projetar e implementar código de teste. Os test smells prejudicam a qualidade do código de teste e reduzem a capacidade de os desenvolvedores interagirem com o código de teste, o que dificulta a compreensão, leitura e, consequentemente, a manutenibilidade e evolução do sistema. Uma estratégia para remover test smells é a refatoração do código de teste. Poucos estudos na literatura oferecem suporte automatizado para a detecção e refatoração de test smells em projetos Java com o framework JUnit. Assim, o presente estudo fornece uma abordagem semi-automatizada para auxiliar a identificação de test smells e sugerir refatorações para o código de teste em projetos que utilizam as tecnologias Java e JUnit. A abordagem proposta é apoiada pela ferramenta RAIDE, desenvolvida de modo integrado ao Eclipse IDE, para lidar com código de teste desenvolvido em Java. O RAIDE oferece suporte a dois test smells: Assertion Roulette e Duplicate Assert. Apesar de existir outras ferramentas capazes de identificar test smells, até onde sabemos, ainda não há evidências de ferramentas que forneçam suporte automatizado a refatoração de test smells. Além disso, as ferramentas existentes não fornecem interfaces amigáveis e integradas a uma IDE para a identificação de test smells. Para avaliar como a abordagem proposta pode contribuir com a melhoria na qualidade do código de teste, realizamos um estudo experimental. Comparamos nossa ferramenta com o estado da arte e verificamos que o uso da abordagem RAIDE possibilitou a identificação de test smells de forma mais fácil e rápida. Além disso, RAIDE também se mostrou eficiente na refatoração de métodos de teste. Como RAIDE é uma ferramenta integrada ao Eclipse IDE, os processos de identificação e refatoração são mais rápidos e intuitivos em comparação com o estado da arte e a refatoração manual,uma vez que com o RAIDE é possível realizar a identificação de test smells e a refatoração com alguns cliques em apenas alguns segundos.pt_BR
dc.description.abstractUnit testing is a specific type of test that deals with the smallest units in the system. It represents the first test after the component is implemented. When the implementation of unit tests does not follow good practices, anti-patterns are likely to be introduced in the code. Anti-patterns in tests, also known as test smells, are poor decisions for designing and implementing test code. Test smells impair the quality of the test code and reduce the ability of developers to interact with the test code, making it difficult to understand, read, and, consequently, maintain and evolve the system. One strategy to remove test smells is to refactor the test code. Few studies in the literature offer automated support for the detection and refactoring of test smells in Java projects with the JUnit framework. Therefore, this study provides a semi-automated approach to assist the identification of test smells and suggest refactorings for the test code in projects using Java and JUnit technologies. The proposed approach is supported by the RefActorIng test Design Errors (RAIDE) tool, an Eclipse IDE plugin, to deal with Java test code. RAIDE supports two test smells, Assertion Roulette and Duplicate Assert. Although there are other tools capable of identifying test smells, as far as we know, there is no evidence of tools that provide automated support for test smells refactoring. In addition, we are unaware of a user-friendly and IDE-integrated tool to identify test smells. To assess how the proposed approach can improve the quality of the test code, we carried out an experimental study. We compared RAIDE with the state-of-the-art tool and found that when using RAIDE, test smells are easier and faster to be identified. Also, RAIDE proved to be efficient in refactoring test methods. The identification and refactoring processes are faster and more intuitive compared to the state-of-the-art tool and the manual refactoring. With RAIDE, it is possible to perform test smells identification and refactoring with a few clicks in a few seconds.pt_BR
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)pt_BR
dc.language.isopt_BRpt_BR
dc.rightsAcesso Abertopt_BR
dc.subjectTest Smellspt_BR
dc.subjectTeste de Unidadept_BR
dc.subjectRefatoração de testept_BR
dc.subjectTeste de software automatizado.pt_BR
dc.subjectSoftware - Refatoraçãopt_BR
dc.subjectSoftware - Testespt_BR
dc.subjectRefActorIng test Design Errors (RAIDE)pt_BR
dc.titleRAIDE: uma abordagem semi-automatizada para identificação e refatoração de test smellspt_BR
dc.typeDissertaçãopt_BR
dc.contributor.advisor-coSoares, Larissa Rocha-
dc.contributor.refereesNeves, Vânia de Oliveria-
dc.contributor.refereesSchobbens, Pierre-Yves-
dc.publisher.departamentUniversidade Federal da Bahiapt_BR
dc.publisher.departamentInstituto de Matemática e Estatísticapt_BR
dc.publisher.departamentDepartamento de Ciência da Computaçãopt_BR
dc.publisher.programem Ciência da Computaçãopt_BR
dc.publisher.initialsUFBApt_BR
dc.publisher.countrybrasilpt_BR
dc.subject.cnpqCiências Exatas e da Terrapt_BR
dc.subject.cnpqCiência da Computaçãopt_BR
dc.subject.cnpqMetodologia e Técnicas da Computaçãopt_BR
dc.subject.cnpqEngenharia de Softwarept_BR
Aparece nas coleções:Dissertação (PGCOMP)

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
Dissertacao_RailanaSantana_VersaoFinal.pdf14,89 MBAdobe PDFVisualizar/Abrir
Mostrar registro simples do item Visualizar estatísticas


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.