Avaliando suítes automaticamente geradas para validação de refatoramentos.

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: SILVA, Indy Paula Soares Cordeiro e.
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Campina Grande
Brasil
Centro de Engenharia Elétrica e Informática - CEEI
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO
UFCG
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/1611
Resumo: Refatoramentos normalmente exigem testes de regress˜ao para verificar se as mudanc¸as aplicadas ao c´odigo, preservaram o comportamento original do mesmo. Geralmente, ´e dif´ıcil definir um conjunto de testes que seja efetivo para esta tarefa, uma vez que o refatoramento n˜ao ´e frequentemente aplicado em etapas isoladas. Al´em disso, as edic¸ ˜oes de refatoramento podem ser combinadas com outras edic¸ ˜oes no c´odigo. Nesse sentido, a gerac¸ ˜ao de casos de teste pode contribuir para essa tarefa, analisando sistematicamente o c´odigo e fornecendo uma ampla gama de casos de teste que abordam diferentes construc¸ ˜oes. No entanto, uma s´erie de estudos apresentados na literatura mostram que as ferramentas atuais ainda n˜ao s˜ao eficazes com relac¸ ˜ao `a detecc¸ ˜ao de faltas, particularmente faltas de refatoramento. Com base nisto, apresentamos dois estudos emp´ıricos que aplicaram as ferramentas Randoop e Evosuite para gerar suites de testes de regress˜ao, com foco na edic¸ ˜ao de refatoramento do tipo extract method. Com base nos resultados dos estudos, identificamos fatores que podem influenciar o desempenho das ferramentas para efetivamente testar a edic¸ ˜ao. Para validar nossos achados, apresentamos um conjunto de modelos de regress˜ao que associam a presenc¸a desses fatores `a capacidade do conjunto de testes, de detectar faltas relacionadas `a edic¸ ˜ao de refatoramento. E por fim, apresentamos a REFANALYZER, que ´e uma ferramenta que objetiva ajudar os desenvolvedores a decidir quando confiar em suites geradas automaticamente, para validar refatoramento do tipo extract method.