Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells
Autor(a) principal: | |
---|---|
Data de Publicação: | 2020 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Comum do Brasil - Deposita |
Texto Completo: | https://deposita.ibict.br/handle/deposita/580 |
Resumo: | A constante busca pela qualidade sempre está em destaque na área de Engenharia de Software. Dentre as diversas disciplinas dedicadas a essa temática, o teste de software tem se estabelecido como uma das mais importantes, dado sua eficácia na identificação de defeitos, em momento prévio à liberação de sistemas de software para o mercado. O teste de software é atividade-chave para o desenvolvimento de software de qualidade. Entretanto, desenvolver testes é tão ou mais custoso do que desenvolver o código de produção. Uma alternativa para a redução dos custos associados ao teste de software se dá pelo uso intensivo de ferramentas de automação de testes. A proposta dessas ferramentas é reduzir o tempo de produção sem afetar a qualidade do código. Apesar dessa premissa, não é comum encontrar abordagens que incluam uma camada de verificação de qualidade dos testes gerados automaticamente, o que pode reduzir a confiabilidade da eficácia desses testes. Neste cenário, a proposta dessa dissertação é analisar empiricamente massas de dados de teste, sob a perspectiva de test smells, no sentido de avaliar a qualidade dos testes produzidos por ferramentas de geração automatizada de testes de software. Test smells são más escolhas no design dos testes e tem características sintomáticas e podem acarretar diminuição na qualidade dos sistemas. Considerando os test smells em código de teste, o estudo analisa os testes gerados por duas ferramentas amplamente aceitas pela comunidade de testes: Evosuite e Randoop. Um conjunto de vinte e um projetos de software de código aberto, disponíveis na plataforma Github foram considerados no estudo. A análise considerou a dispersão de test smells no código de teste desses projetos, bem como a existência de potenciais correlações entre test smells e as relações com as métricas estruturais. Como principais resultados, encontramos fortes correlações entre os test smells e as métricas de cobertura do código, diferenças significativas entre os dados encontrados nas suítes de testes geradas automaticamente e com os testes pré-existentes nos projetos avaliados. |
id |
IBICT-1_ead44d67e69832666273dfa4b8adf82d |
---|---|
oai_identifier_str |
oai:https://deposita.ibict.br:deposita/580 |
network_acronym_str |
IBICT-1 |
network_name_str |
Repositório Comum do Brasil - Deposita |
repository_id_str |
4658 |
spelling |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smellsqualidade de softwarecode smellstest smellsautomação de teste de softwareCiências Exatas e da TerraA constante busca pela qualidade sempre está em destaque na área de Engenharia de Software. Dentre as diversas disciplinas dedicadas a essa temática, o teste de software tem se estabelecido como uma das mais importantes, dado sua eficácia na identificação de defeitos, em momento prévio à liberação de sistemas de software para o mercado. O teste de software é atividade-chave para o desenvolvimento de software de qualidade. Entretanto, desenvolver testes é tão ou mais custoso do que desenvolver o código de produção. Uma alternativa para a redução dos custos associados ao teste de software se dá pelo uso intensivo de ferramentas de automação de testes. A proposta dessas ferramentas é reduzir o tempo de produção sem afetar a qualidade do código. Apesar dessa premissa, não é comum encontrar abordagens que incluam uma camada de verificação de qualidade dos testes gerados automaticamente, o que pode reduzir a confiabilidade da eficácia desses testes. Neste cenário, a proposta dessa dissertação é analisar empiricamente massas de dados de teste, sob a perspectiva de test smells, no sentido de avaliar a qualidade dos testes produzidos por ferramentas de geração automatizada de testes de software. Test smells são más escolhas no design dos testes e tem características sintomáticas e podem acarretar diminuição na qualidade dos sistemas. Considerando os test smells em código de teste, o estudo analisa os testes gerados por duas ferramentas amplamente aceitas pela comunidade de testes: Evosuite e Randoop. Um conjunto de vinte e um projetos de software de código aberto, disponíveis na plataforma Github foram considerados no estudo. A análise considerou a dispersão de test smells no código de teste desses projetos, bem como a existência de potenciais correlações entre test smells e as relações com as métricas estruturais. Como principais resultados, encontramos fortes correlações entre os test smells e as métricas de cobertura do código, diferenças significativas entre os dados encontrados nas suítes de testes geradas automaticamente e com os testes pré-existentes nos projetos avaliados.The constant search for quality is always highlighted in the area of Software Engineering. Among the various disciplines dedicated to this topic, software testing has established itself as one of the most important, given its effectiveness in identifying defects, prior to the release of software systems to the market. Software testing is a key activity for developing quality software. However, developing tests is as costly or more expensive than developing production code. An alternative to reducing costs associated with software testing is the intensive use of test automation tools. The purpose of these tools is to reduce production time without affecting code quality. Despite this premise, it is not common to find approaches that include a quality check layer for automatically generated tests, which can reduce the reliability of the effectiveness of these tests. In this scenario, the purpose of this dissertation is to empirically analyze masses of test data, from the perspective of test smells, in order to evaluate the quality of tests produced by automated software test generation tools. Test smells are bad choices in test design and have symptomatic characteristics and can lead to a decrease in the quality of systems. Considering test smells in test code, the study analyzes tests generated by two tools widely accepted by the testing community: Evosuite and Randoop. A set of twenty-one open source software projects available on the Github platform were considered in the study. The analysis considered the dispersion of test smells in the test code of these projects, as well as the existence of potential correlations between test smells and relationships with structural metrics. As main results, we found strong correlations between test smells and code coverage metrics, significant differences between the data found in the automatically generated test suites and with pre-existing tests in the evaluated projects.Universidade Federal do BahiaUniversidade Federal da BahiaBrasilPrograma de Pós-graduação em Ciência da Computaçãohttps://lattes.cnpq.br/051747096610464004242982445Machado, Ivanhttp://lattes.cnpq.br/4430958315746203Virgínio, Tássio2024-03-27T18:56:25Z2020info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttps://deposita.ibict.br/handle/deposita/580porinfo:eu-repo/semantics/openAccessreponame:Repositório Comum do Brasil - Depositainstname:Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT)instacron:IBICT2024-03-27T18:57:09Zoai:https://deposita.ibict.br:deposita/580Repositório ComumPUBhttp://deposita.ibict.br/oai/requestdeposita@ibict.bropendoar:46582024-03-27T18:57:09Repositório Comum do Brasil - Deposita - Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT)false |
dc.title.none.fl_str_mv |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
title |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
spellingShingle |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells Virgínio, Tássio qualidade de software code smells test smells automação de teste de software Ciências Exatas e da Terra |
title_short |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
title_full |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
title_fullStr |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
title_full_unstemmed |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
title_sort |
Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells |
author |
Virgínio, Tássio |
author_facet |
Virgínio, Tássio |
author_role |
author |
dc.contributor.none.fl_str_mv |
https://lattes.cnpq.br/0517470966104640 04242982445 Machado, Ivan http://lattes.cnpq.br/4430958315746203 |
dc.contributor.author.fl_str_mv |
Virgínio, Tássio |
dc.subject.por.fl_str_mv |
qualidade de software code smells test smells automação de teste de software Ciências Exatas e da Terra |
topic |
qualidade de software code smells test smells automação de teste de software Ciências Exatas e da Terra |
description |
A constante busca pela qualidade sempre está em destaque na área de Engenharia de Software. Dentre as diversas disciplinas dedicadas a essa temática, o teste de software tem se estabelecido como uma das mais importantes, dado sua eficácia na identificação de defeitos, em momento prévio à liberação de sistemas de software para o mercado. O teste de software é atividade-chave para o desenvolvimento de software de qualidade. Entretanto, desenvolver testes é tão ou mais custoso do que desenvolver o código de produção. Uma alternativa para a redução dos custos associados ao teste de software se dá pelo uso intensivo de ferramentas de automação de testes. A proposta dessas ferramentas é reduzir o tempo de produção sem afetar a qualidade do código. Apesar dessa premissa, não é comum encontrar abordagens que incluam uma camada de verificação de qualidade dos testes gerados automaticamente, o que pode reduzir a confiabilidade da eficácia desses testes. Neste cenário, a proposta dessa dissertação é analisar empiricamente massas de dados de teste, sob a perspectiva de test smells, no sentido de avaliar a qualidade dos testes produzidos por ferramentas de geração automatizada de testes de software. Test smells são más escolhas no design dos testes e tem características sintomáticas e podem acarretar diminuição na qualidade dos sistemas. Considerando os test smells em código de teste, o estudo analisa os testes gerados por duas ferramentas amplamente aceitas pela comunidade de testes: Evosuite e Randoop. Um conjunto de vinte e um projetos de software de código aberto, disponíveis na plataforma Github foram considerados no estudo. A análise considerou a dispersão de test smells no código de teste desses projetos, bem como a existência de potenciais correlações entre test smells e as relações com as métricas estruturais. Como principais resultados, encontramos fortes correlações entre os test smells e as métricas de cobertura do código, diferenças significativas entre os dados encontrados nas suítes de testes geradas automaticamente e com os testes pré-existentes nos projetos avaliados. |
publishDate |
2020 |
dc.date.none.fl_str_mv |
2020 2024-03-27T18:56:25Z |
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.uri.fl_str_mv |
https://deposita.ibict.br/handle/deposita/580 |
url |
https://deposita.ibict.br/handle/deposita/580 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidade Federal do Bahia Universidade Federal da Bahia Brasil Programa de Pós-graduação em Ciência da Computação |
publisher.none.fl_str_mv |
Universidade Federal do Bahia Universidade Federal da Bahia Brasil Programa de Pós-graduação em Ciência da Computação |
dc.source.none.fl_str_mv |
reponame:Repositório Comum do Brasil - Deposita instname:Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT) instacron:IBICT |
instname_str |
Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT) |
instacron_str |
IBICT |
institution |
IBICT |
reponame_str |
Repositório Comum do Brasil - Deposita |
collection |
Repositório Comum do Brasil - Deposita |
repository.name.fl_str_mv |
Repositório Comum do Brasil - Deposita - Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT) |
repository.mail.fl_str_mv |
deposita@ibict.br |
_version_ |
1801753549286146048 |