Uma Abordagem para Análise de Cobertura de Código para Sistemas em Evolução
cobertura de código, testes de software, evolução de software
Atualmente, a etapa de testes do processo de desenvolvimento de software tornou-se imprescindível para garantir a confiabilidade e qualidade do código em produção. Muitos abordagens e ferramentas têm explorado o tema de cobertura de código, ou seja, o quanto o código do sistema é coberto pelos testes automatizados definidos para ele. Diversas são as métricas adotadas pelas ferramentas para determinar o nível e estado de cobertura dos sistemas, entretanto, a maior parte das métricas de código e trabalhos atuais não levam em consideração informações a respeito da evolução do sistema. Este trabalho busca desenvolver uma abordagem que: (i) analisa a cobertura de código do sistema levando em consideração os fluxos de chamadas existentes no sistema que foram afetados pela evolução do sistema, assim como os fluxos de execução oriundos da execução dos testes; e (ii) indica quais fluxos de chamadas do sistema não estão sendo cobertos pelos testes atualmente e que, portanto, poderiam ser considerados para melhorar a qualidade dos testes. O trabalho busca avaliar a abordagem através da realização de um estudo empírico que envolve sua aplicação para diferentes sistemas de código aberto.