Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação
Autor(a) principal: | |
---|---|
Data de Publicação: | 2021 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFSCAR |
Texto Completo: | https://repositorio.ufscar.br/handle/ufscar/14107 |
Resumo: | Context: With the increasing presence of technology in daily life, it is crucial to guarantee the quality of software products, which can be reached by testing activity. However, testing is highly expensive, once it is responsible for, in most cases, more than half of the software development cost. Among the existing testing criteria, mutation testing is highlighted once it is capable of revealing specific faults in software. Although mutation testing is effective, test data generation and live mutants analysis make the activity unfeasible because it is still required considerable human intervention. Goals: Therefore, this paper aims at evaluating four automatic test data generators (EvoSuite, JTeXpert, Palus, and Randoop), focusing on mutation testing, by measuring adequacy, effectiveness and cost. The first three of these generators implement heuristics during test data generation and they are evaluated both individually and combined, using as baseline a randomic generator. Method: Such generators are compared by conducting an experiment with 33 software products implemented in Java. Adequacy is measured regarding statement coverage, effectiveness regarding mutation score and cost regarding the number of generated test cases. For each generator we generated 10 different test sets for each one of the 33 analysed programs, totaling 1320 distincts test sets. Results: Results show, when we analyze the generators individually, it is not possible to conclude there is a difference between them. However, when we combine the heuristic-based generators, it is possible to conclude there is significant improvement when compared to the randomic generator. Moreover, when we combine all generators, including the randomic one, we obtained improvments of 0,2% in statement coverage and 4% in effectiveness, but we also obtained a significant increase in cost. Conclusion: In general, we observe there is a complementary aspect between the three automatic test data generators and they should be combined to improve the quality of test sets regarding mutation score. However, even with such combination, there is still 25% of the generated mutants which remain alive, indicating there is still room for improvements on quality of the used generators. |
id |
SCAR_56bdb6d3bc02ead2d76765b6035ff579 |
---|---|
oai_identifier_str |
oai:repositorio.ufscar.br:ufscar/14107 |
network_acronym_str |
SCAR |
network_name_str |
Repositório Institucional da UFSCAR |
repository_id_str |
4322 |
spelling |
Araujo, Filipe SantosVincenzi, Auri Marcelo Rizzohttp://lattes.cnpq.br/0611351138131709http://lattes.cnpq.br/5213023573055458b8015363-d6d8-4be8-8310-ad08af23b9ad2021-04-13T13:12:28Z2021-04-13T13:12:28Z2021-03-31ARAUJO, Filipe Santos. Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação. 2021. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/14107.https://repositorio.ufscar.br/handle/ufscar/14107Context: With the increasing presence of technology in daily life, it is crucial to guarantee the quality of software products, which can be reached by testing activity. However, testing is highly expensive, once it is responsible for, in most cases, more than half of the software development cost. Among the existing testing criteria, mutation testing is highlighted once it is capable of revealing specific faults in software. Although mutation testing is effective, test data generation and live mutants analysis make the activity unfeasible because it is still required considerable human intervention. Goals: Therefore, this paper aims at evaluating four automatic test data generators (EvoSuite, JTeXpert, Palus, and Randoop), focusing on mutation testing, by measuring adequacy, effectiveness and cost. The first three of these generators implement heuristics during test data generation and they are evaluated both individually and combined, using as baseline a randomic generator. Method: Such generators are compared by conducting an experiment with 33 software products implemented in Java. Adequacy is measured regarding statement coverage, effectiveness regarding mutation score and cost regarding the number of generated test cases. For each generator we generated 10 different test sets for each one of the 33 analysed programs, totaling 1320 distincts test sets. Results: Results show, when we analyze the generators individually, it is not possible to conclude there is a difference between them. However, when we combine the heuristic-based generators, it is possible to conclude there is significant improvement when compared to the randomic generator. Moreover, when we combine all generators, including the randomic one, we obtained improvments of 0,2% in statement coverage and 4% in effectiveness, but we also obtained a significant increase in cost. Conclusion: In general, we observe there is a complementary aspect between the three automatic test data generators and they should be combined to improve the quality of test sets regarding mutation score. However, even with such combination, there is still 25% of the generated mutants which remain alive, indicating there is still room for improvements on quality of the used generators.Contexto: Com o avanço da presença da tecnologia na vida cotidiana, é crucial garantir a qualidade dos produtos de software, o que é alcançável, parcialmente, por meio da atividade de teste. Porém, o teste é altamente oneroso, sendo que o mesmo representa, em muitos casos, mais da metade do custo total do desenvolvimento de software. Dentre os critérios de teste, destaca-se o teste de mutação por ser capaz de revelar defeitos específicos do software. Embora o teste de mutação seja eficaz, as etapas de geração de dados de teste e de análise de mutantes vivos tornam a atividade inviável pelo fato de, ainda, demandarem intensa intervenção humana. Objetivos: Sendo assim, este trabalho visa avaliar quatro geradores automáticos de dados de teste (EvoSuite, JTeXpert, Palus e Randoop), com ênfase no teste de mutação, utilizando de métricas como adequação, eficácia e custo. Os três primeiros destes geradores implementam heurísticas para a geração e são avaliados tanto de forma individual, quanto em conjunto, tendo como base um gerador aleatório. Método: Tais geradores são comparados por meio da condução de um experimento com 33 produtos de software implementados em Java. A adequação é medida em relação ao critério cobertura de comandos, a eficácia é medida em relação ao teste de mutação, e o custo em relação ao número de casos de teste gerados. Para cada gerador são gerados 10 conjuntos de teste diferentes para cada um dos 33 programas analisados, totalizando 1320 conjuntos de testes distintos. Resultados: Os resultados demonstram que de forma individualizada, em geral, não é possível concluir que há diferença entre os geradores de dados de teste analisados. Quando combinados, os geradores que utilizam heurísticas apresentam melhores resultados do que o gerador aleatório. A combinação dos geradores inteligentes com o aleatório traz um incremento 0,2% em relação adequação e um incremento de 4% em relação à eficácia com um incremento significativo no custo. Conclusão: De maneira geral, observa-se que existe uma complementariedade entre os geradores de dados de teste e os mesmos devem ser combinados para um conjunto de teste de melhor qualidade em relação ao teste de mutação. Entretanto, mesmo com a união de todos os conjuntos de teste gerados, em torno 25% dos mutantes gerados permanecem vivos, indicando que há espaço para melhoria na qualidade dos geradores de dados de teste utilizados.Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES)CAPES: 88882.426575/2019-01porUniversidade Federal de São CarlosCâmpus São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessGeração de dados de testeTeste de mutaçãoTest data generationMutation testingSearch-based software testingCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAOAvaliação de geradores automáticos de dados de teste com ênfase no teste de mutaçãoEvaluation of automated test data generators with focus on mutation testinginfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisd0b4a7ac-bc77-444f-a8c8-b7b9011ba495reponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINALdissertacao_filipe_final.pdfdissertacao_filipe_final.pdfDissertação de Mestradoapplication/pdf3079156https://repositorio.ufscar.br/bitstream/ufscar/14107/1/dissertacao_filipe_final.pdfa5728f79097ca9c5a1b1bb95524f1095MD51carta_autorizacao_publicacao.pdfcarta_autorizacao_publicacao.pdfCarta de autorização de publicaçãoapplication/pdf117573https://repositorio.ufscar.br/bitstream/ufscar/14107/3/carta_autorizacao_publicacao.pdf4f770eb0ee92b67aa8b2bae3a28be1acMD53CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufscar.br/bitstream/ufscar/14107/4/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD54TEXTdissertacao_filipe_final.pdf.txtdissertacao_filipe_final.pdf.txtExtracted texttext/plain118284https://repositorio.ufscar.br/bitstream/ufscar/14107/5/dissertacao_filipe_final.pdf.txtc6a1aea0fe0a9341df626af458a71c2bMD55carta_autorizacao_publicacao.pdf.txtcarta_autorizacao_publicacao.pdf.txtExtracted texttext/plain1468https://repositorio.ufscar.br/bitstream/ufscar/14107/7/carta_autorizacao_publicacao.pdf.txt968ff50c6c3fb992983c5132a7416d80MD57THUMBNAILdissertacao_filipe_final.pdf.jpgdissertacao_filipe_final.pdf.jpgIM Thumbnailimage/jpeg8074https://repositorio.ufscar.br/bitstream/ufscar/14107/6/dissertacao_filipe_final.pdf.jpgd7845cd32d539495c0baa559c27349feMD56carta_autorizacao_publicacao.pdf.jpgcarta_autorizacao_publicacao.pdf.jpgIM Thumbnailimage/jpeg13741https://repositorio.ufscar.br/bitstream/ufscar/14107/8/carta_autorizacao_publicacao.pdf.jpge118eb1fee8309f1f2a14241cbce1803MD58ufscar/141072023-09-18 18:32:09.071oai:repositorio.ufscar.br:ufscar/14107Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222023-09-18T18:32:09Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false |
dc.title.por.fl_str_mv |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
dc.title.alternative.eng.fl_str_mv |
Evaluation of automated test data generators with focus on mutation testing |
title |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
spellingShingle |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação Araujo, Filipe Santos Geração de dados de teste Teste de mutação Test data generation Mutation testing Search-based software testing CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
title_short |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
title_full |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
title_fullStr |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
title_full_unstemmed |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
title_sort |
Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação |
author |
Araujo, Filipe Santos |
author_facet |
Araujo, Filipe Santos |
author_role |
author |
dc.contributor.authorlattes.por.fl_str_mv |
http://lattes.cnpq.br/5213023573055458 |
dc.contributor.author.fl_str_mv |
Araujo, Filipe Santos |
dc.contributor.advisor1.fl_str_mv |
Vincenzi, Auri Marcelo Rizzo |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/0611351138131709 |
dc.contributor.authorID.fl_str_mv |
b8015363-d6d8-4be8-8310-ad08af23b9ad |
contributor_str_mv |
Vincenzi, Auri Marcelo Rizzo |
dc.subject.por.fl_str_mv |
Geração de dados de teste Teste de mutação |
topic |
Geração de dados de teste Teste de mutação Test data generation Mutation testing Search-based software testing CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
dc.subject.eng.fl_str_mv |
Test data generation Mutation testing Search-based software testing |
dc.subject.cnpq.fl_str_mv |
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO |
description |
Context: With the increasing presence of technology in daily life, it is crucial to guarantee the quality of software products, which can be reached by testing activity. However, testing is highly expensive, once it is responsible for, in most cases, more than half of the software development cost. Among the existing testing criteria, mutation testing is highlighted once it is capable of revealing specific faults in software. Although mutation testing is effective, test data generation and live mutants analysis make the activity unfeasible because it is still required considerable human intervention. Goals: Therefore, this paper aims at evaluating four automatic test data generators (EvoSuite, JTeXpert, Palus, and Randoop), focusing on mutation testing, by measuring adequacy, effectiveness and cost. The first three of these generators implement heuristics during test data generation and they are evaluated both individually and combined, using as baseline a randomic generator. Method: Such generators are compared by conducting an experiment with 33 software products implemented in Java. Adequacy is measured regarding statement coverage, effectiveness regarding mutation score and cost regarding the number of generated test cases. For each generator we generated 10 different test sets for each one of the 33 analysed programs, totaling 1320 distincts test sets. Results: Results show, when we analyze the generators individually, it is not possible to conclude there is a difference between them. However, when we combine the heuristic-based generators, it is possible to conclude there is significant improvement when compared to the randomic generator. Moreover, when we combine all generators, including the randomic one, we obtained improvments of 0,2% in statement coverage and 4% in effectiveness, but we also obtained a significant increase in cost. Conclusion: In general, we observe there is a complementary aspect between the three automatic test data generators and they should be combined to improve the quality of test sets regarding mutation score. However, even with such combination, there is still 25% of the generated mutants which remain alive, indicating there is still room for improvements on quality of the used generators. |
publishDate |
2021 |
dc.date.accessioned.fl_str_mv |
2021-04-13T13:12:28Z |
dc.date.available.fl_str_mv |
2021-04-13T13:12:28Z |
dc.date.issued.fl_str_mv |
2021-03-31 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
ARAUJO, Filipe Santos. Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação. 2021. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/14107. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufscar.br/handle/ufscar/14107 |
identifier_str_mv |
ARAUJO, Filipe Santos. Avaliação de geradores automáticos de dados de teste com ênfase no teste de mutação. 2021. Dissertação (Mestrado em Ciência da Computação) – Universidade Federal de São Carlos, São Carlos, 2021. Disponível em: https://repositorio.ufscar.br/handle/ufscar/14107. |
url |
https://repositorio.ufscar.br/handle/ufscar/14107 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.authority.fl_str_mv |
d0b4a7ac-bc77-444f-a8c8-b7b9011ba495 |
dc.rights.driver.fl_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
Attribution-NonCommercial-NoDerivs 3.0 Brazil http://creativecommons.org/licenses/by-nc-nd/3.0/br/ |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Ciência da Computação - PPGCC |
dc.publisher.initials.fl_str_mv |
UFSCar |
publisher.none.fl_str_mv |
Universidade Federal de São Carlos Câmpus São Carlos |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFSCAR instname:Universidade Federal de São Carlos (UFSCAR) instacron:UFSCAR |
instname_str |
Universidade Federal de São Carlos (UFSCAR) |
instacron_str |
UFSCAR |
institution |
UFSCAR |
reponame_str |
Repositório Institucional da UFSCAR |
collection |
Repositório Institucional da UFSCAR |
bitstream.url.fl_str_mv |
https://repositorio.ufscar.br/bitstream/ufscar/14107/1/dissertacao_filipe_final.pdf https://repositorio.ufscar.br/bitstream/ufscar/14107/3/carta_autorizacao_publicacao.pdf https://repositorio.ufscar.br/bitstream/ufscar/14107/4/license_rdf https://repositorio.ufscar.br/bitstream/ufscar/14107/5/dissertacao_filipe_final.pdf.txt https://repositorio.ufscar.br/bitstream/ufscar/14107/7/carta_autorizacao_publicacao.pdf.txt https://repositorio.ufscar.br/bitstream/ufscar/14107/6/dissertacao_filipe_final.pdf.jpg https://repositorio.ufscar.br/bitstream/ufscar/14107/8/carta_autorizacao_publicacao.pdf.jpg |
bitstream.checksum.fl_str_mv |
a5728f79097ca9c5a1b1bb95524f1095 4f770eb0ee92b67aa8b2bae3a28be1ac e39d27027a6cc9cb039ad269a5db8e34 c6a1aea0fe0a9341df626af458a71c2b 968ff50c6c3fb992983c5132a7416d80 d7845cd32d539495c0baa559c27349fe e118eb1fee8309f1f2a14241cbce1803 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR) |
repository.mail.fl_str_mv |
|
_version_ |
1802136388765745152 |