Investigação de estratégia para redução de custo do teste de mutação com apoio de similaridade entre programas

dc.contributor.advisor1Ferrari, Fabiano Cutigi
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/3154345471250570
dc.contributor.authorPizzoleto, Alessandro Viola
dc.contributor.authorlatteshttps://lattes.cnpq.br/1055437010539881
dc.contributor.authororcidhttps://orcid.org/0000-0002-8397-8703
dc.contributor.refereeLucrédio, Daniel
dc.contributor.refereeVincenzi, Auri Marcelo Rizzo
dc.contributor.refereeSouza, Simone do Rocio Senger de
dc.contributor.refereeDurelli, Vinicius Humberto Serapilha
dc.contributor.refereeLatteshttp://lattes.cnpq.br/9090396559596221
dc.contributor.refereeLatteshttp://lattes.cnpq.br/0611351138131709
dc.contributor.refereeLatteshttp://lattes.cnpq.br/7137178343756327
dc.contributor.refereeLatteshttp://lattes.cnpq.br/8816910024419957
dc.date.accessioned2026-05-18T14:47:06Z
dc.date.issued2022-12-16
dc.description.abstractContext: The mutation test criterion stands out as an important alternative for evaluating both the software to be tested and the test set to be used. This criterion is considered effective, but it has some gaps that must be filled in relation to its efficiency, due to its high execution cost. There is a relatively high set of techniques that reduce their execution costs, aiming at their use in industry, but their results are not generally generalizable. Some studies related to cost reduction techniques presented heuristics whose objective is to calculate the similarities of the programs used, but not deeply studied. Objective: This work presents a systematic review of the literature that seeks to present the state of the art in mutation testing, the definition, creation and population of a database of artifacts, the implementation of an automated process for defining the Essential Set of mutation operators to help reduce the cost of running mutation testing. Methodology: The implementation presented in this work deals with programs written in the Java language and includes a set of variants that relate to three types of program abstractions (original source code, obfuscated source code, and internal complexity metrics), three calculation strategies of similarity (clustering, distance functions between strings, and plagiarism) and a mutation cost reduction approach (inspired by best operators and essential set techniques). The evaluation presented, using 221 classes written in the Java language, covers 20 configurations varying the techniques of program abstractions and similarities. Results: The implementation of a knowledge base of structured artifacts, automation of the technique of defining the Essential Set of Operators, a cross-comparison involving the clusters formed that tend to achieve high effectiveness in predicting the best mutation operators and essential set for untested programs with mutation testing and a statistical analysis evaluating the similarity between configuration results. Conclusions: Considering the configurations selected for the experiments, the results presented for the combinations using the essential sets technique for the comparison of effectiveness, highlighting the configurations that presented the best set of operators, use of new sizes for the reference clusters, an analytical analysis of the results associated with a statistical analysis using the variance technique to verify the equivalence between the sets of results.eng
dc.description.resumoContexto: O critério de teste de mutação destaca-se como importante alternativa para a avaliação tando do software a ser testado quando o conjunto de teste a ser utilizado. Tal critério é considerado eficaz, mas apresenta algumas lacunas que devem ser preenchidas com relação a sua eficiência, devido a seu alto custo de execução. Há um conjunto relativamente alto de técnicas que reduzem seu custo de execução visando sua utilização na indústria, mas seus resultados são poucos generalizáveis. Alguns estudos relacionados a técnicas de redução de custo apresentavam heurísticas cujo objetivo é calcular a similaridades dos programas utilizados, mas não estudado profundamente. Objetivos: Neste trabalho apresenta-se uma revisão sistemática da literatura que busca apresentar o estado da arte em teste de mutação, a definição, criação e população de uma base de dados de artefatos, a implementação de processo automatizado para definição do Conjunto Essencial de operadores de mutação para ajudar na redução de custo para execução de teste de mutação. Método: A implementação apresentada neste trabalho lida com programas escritos na linguagem Java e inclui um conjunto de variantes que se relacionam a três tipos de abstrações de programas (código-fonte original, código-fonte ofuscado, e métricas de complexidade interna), três estratégias de cálculos de similaridade (clustering, funções de distância entre strings, e plagiarismo) e uma abordagem de redução de custo de mutação (inspirada nas técnicas de melhores operadores e conjunto essencial). A avaliação apresentada, utilizando 221 classes escritas na linguagem Java, abrange 20 configurações variando-se as técnicas de abstrações de programas e similaridades. Resultados: A implementação de uma base de conhecimento de artefatos estruturada, automação da técnica de definição do Conjunto Essencial de Operadores, uma comparação cruzada envolvendo os clusters formados que tendem a atingir alta efetividade em prever os melhores operadores de mutação e conjunto essencial para programas não testados com o teste de mutação e uma análise estatística avaliando a semelhança entre os resultados das configurações. Conclusão: Considerando-se as configurações selecionadas para os experimentos, os resultados apresentados para as combinações usando a técnica de Conjuntos Essenciais para a comparação da efetividade destacando as configurações que apresentaram melhores conjuntos de operadores, utilização de novos tamanhos para os clusters de referência, uma análise analítica do resultados associada a uma análise estatística usando a técnica de variância para verificar a equivalência entre os conjuntos de resultados.por
dc.description.sponsorshipCoordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)
dc.identifier.citationPIZZOLETO, Alessandro Viola. Investigação de estratégia para redução de custo do teste de mutação com apoio de similaridade entre programas. 2022. Tese (Doutorado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2022. Disponível em: https://repositorio.ufscar.br/handle/20.500.14289/24125.por
dc.identifier.urihttps://hdl.handle.net/20.500.14289/24125
dc.language.isopor
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.1145/3474624.3477060
dc.relation.urihttps://doi.org/10.1109/ICSTW55395.2022.00041
dc.relation.urihttps://doi.org/10.1109/ICSTW50294.2020.00052
dc.relation.urihttps://doi.org/10.1016/j.jss.2019.07.100
dc.relation.urihttps://doi.org/10.1109/ICSTW.2018.00021
dc.rightsAttribution-NonCommercial-NoDerivs 3.0 Brazilen
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/3.0/br/
dc.subjectAnálise de mutaçãopor
dc.subjectTeste de mutaçãopor
dc.subjectRedução de custopor
dc.subjectTeste de softwarepor
dc.subjectEscore de mutaçãopor
dc.subjectMutation analysiseng
dc.subjectMutation testingeng
dc.subjectCost reductioneng
dc.subjectSoftware testingeng
dc.subjectMutation scoreeng
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.titleInvestigação de estratégia para redução de custo do teste de mutação com apoio de similaridade entre programaspor
dc.title.alternativeResearching strategies for reducing the cost of mutation testing with support from similarity between programseng
dc.typeTese

Arquivos

Pacote Original

Agora exibindo 1 - 1 de 1
Carregando...
Imagem de Miniatura
Nome:
Tese de Doutorado_Alessandro_Viola_Pizzoleto.pdf
Tamanho:
8.73 MB
Formato:
Adobe Portable Document Format