DSpace/Manakin Repository

Generated tests in the context of maintenance tasks: a series of empirical studies.

Mostrar registro simples

dc.creator.ID HERCULANO, W. B. R. pt_BR
dc.creator.Lattes http://lattes.cnpq.br/5991303240914778 pt_BR
dc.contributor.advisor1 ALVES, Everton Leandro Galdino.
dc.contributor.advisor1ID ALVES, E. L. G. pt_BR
dc.contributor.advisor1Lattes http://lattes.cnpq.br/2793969744497453 pt_BR
dc.contributor.advisor2 LIRA, Melina Mongiovi Brito.
dc.contributor.advisor2ID MONGIOVI, M. pt_BR
dc.contributor.advisor2Lattes http://lattes.cnpq.br/7535849756393864 pt_BR
dc.contributor.referee1 MACHADO, Patrícia Duarte de Lima.
dc.contributor.referee2 COELHO, Roberta de Souza.
dc.description.resumo As atividades de manutenção geralmente consomem tempo e são difíceis de gerenciar. Para lidar com isso, os desenvolvedores geralmente usam casos de teste que falham para orientar seus esforços de manutenção. Portanto, possuir bons casos de teste é essencial para o sucesso da manutenção. Testes gerados automaticamente podem economizar tempo e obter uma maior cobertura de código. No entanto, muitas vezes não refletem cenários realistas e incluem test smells. Além disso, não é clara a eficácia destes testes ao orientar as atividades de manutenção, nem se os desenvolvedores os aceitam totalmente. Neste trabalho, apresentamos uma série de estudos empíricos que avaliam se testes gerados automaticamente podem dar suporte aos desenvolvedores na manutenção do código. Primeiro, realizamos um estudo com 20 desenvolvedores para comparar como eles executam atividades de manutenção com testes gerados automaticamente (Evosuite ou Randoop) e testes escritos manualmente, obtendo resultados que mostram que testes gerados automaticamente podem ser de grande ajuda para identificar falhas durante a manutenção, com os desenvolvedores sendo mais precisos na identificação de atividades de manutenção ao usar os testes gerados pelo Evosuite e igualmente eficazes nas correções de bugs usando testes manuais e testes gerados pelo Evosuite e Randoop. Em seguida, aplicamos um questionário com 82 desenvolvedores para avaliar a percepção sobre o uso de testes do Randoop (ferramenta que, de maneira geral, apresentou o pior desempenho no primeiro estudo) refatorados removendo 3 tipos de testes smells, onde os resultados demonstram que os desenvolvedores preferiram testes do Randoop refatorados aos originais. Por fim, realizamos um terceiro estudo empírico com 24 desenvolvedores focado em avaliar o impacto dos Randoop refatorados em atividades de manutenção, com resultados evidenciando que as refatorações aplicadas não melhoraram o desempenho dos desenvolvedores na detecção de falhas. Por outro lado, os desenvolvedores foram mais eficazes na correção das faltas usando testes Randoop refatorados. pt_BR
dc.publisher.country Brasil pt_BR
dc.publisher.department Centro de Engenharia Elétrica e Informática - CEEI pt_BR
dc.publisher.program PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO pt_BR
dc.publisher.initials UFCG pt_BR
dc.subject.cnpq Ciência da Computação pt_BR
dc.title Generated tests in the context of maintenance tasks: a series of empirical studies. pt_BR
dc.date.issued 2022-10-04
dc.description.abstract Maintenance tasks are often time-consuming and hard to manage. To cope with that, developers often use failing test cases to guide their maintenance efforts. Therefore, working with good test cases is essential to the success of maintenance. Automatically generated tests can save time and lead to higher code coverage. However, they often do not reflect realistic scenarios and include test smells. Moreover, it is not clear whether generated tests can be effective when guiding maintenance tasks, nor if developers fully accept them. In this work, we present a series of empirical studies that evaluate if automatically generated tests can support developers when maintaining code. First, we ran an empirical study with 20 real developers to compare how they perform maintenance tasks with automatically generated (Evosuite or Randoop) and manually-written tests. Our results showed that automatically generated tests can be a great help for identifying faults during maintenance. Developers were more accurate at identifying maintenance tasks when using Evosuite tests and equally effective to create bug fixes when using manually written, Evosuite, and Randoop. Then, we applied a survey with 82 developers to assess developers’ perceptions of the use of Randoop tests (that presented the worst performance in the first study) refactored by removing 3 kinds of test smells. Results of this investigation showed that developers preferred refactored Randoop tests to the original ones. Finally, a third empirical study with 24 developers focused on evaluating the impact of these refactored Randoop tests on maintenance performance. We found that the refactorings applied did not improve their performance in detecting the faults. On the other hand, developers were more effective in fixing the faults using refactored Randoop tests. pt_BR
dc.identifier.uri http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/28720
dc.date.accessioned 2023-01-19T14:44:46Z
dc.date.available 2023-01-19
dc.date.available 2023-01-19T14:44:46Z
dc.type Dissertação pt_BR
dc.subject Testes gerados pt_BR
dc.subject Manutenção pt_BR
dc.subject Randoop pt_BR
dc.subject Evosuite pt_BR
dc.subject Test smells pt_BR
dc.subject Refatoração pt_BR
dc.subject Software engineering pt_BR
dc.subject Generated tests pt_BR
dc.subject Maintenance pt_BR
dc.subject Testar cheiros pt_BR
dc.subject Refactoring pt_BR
dc.subject Engenharia de software pt_BR
dc.subject Pruebas generadas pt_BR
dc.subject Mantenimiento pt_BR
dc.subject Al azar pt_BR
dc.subject Refactorización pt_BR
dc.subject Ingeniería de software pt_BR
dc.subject Tests générés pt_BR
dc.subject Entretien pt_BR
dc.subject Suite évolutive pt_BR
dc.subject Tester les odeurs pt_BR
dc.subject Refactorisation pt_BR
dc.subject Génie logiciel pt_BR
dc.rights Acesso Aberto pt_BR
dc.creator HERCULANO, Wesley Brenno Rodrigues.
dc.publisher Universidade Federal de Campina Grande pt_BR
dc.language eng pt_BR
dc.title.alternative Testes gerados no contexto de tarefas de manutenção: uma série de estudos empíricos. pt_BR
dc.identifier.citation HERCULANO, W. B. R. Generated tests in the context of maintenance tasks: a series of empirical studies. 2022. 87 f. Dissertação (Mestrado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2022. pt_BR


Arquivos deste item

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Buscar DSpace


Busca avançada

Navegar

Minha conta