Avaliação empírica da geração automatizada de testes de software sob a perspectiva de test smells
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 d...
| Autor: | |
|---|---|
| Formato: | tesis de maestría |
| Estado: | Versión publicada |
| Fecha de publicación: | 2020 |
| País: | Brasil |
| Recursos: | Instituto Brasileiro de Informação em Ciência e Tecnologia (Ibict) |
| Repositorio: | Repositório Comum do Brasil - Deposita |
| Idioma: | portugués |
| OAI Identifier: | oai:deposita.ibict.br:deposita/580 |
| Acesso em linha: | https://deposita.ibict.br/handle/deposita/580 |
| Access Level: | acceso abierto |
| Palavra-chave: | qualidade de software code smells test smells automação de teste de software Ciências Exatas e da Terra |
| 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. |
|---|