UMA ABORDAGEM VISUAL PARA EVOLUÇÃO DE TEST SMELLS EM SOFTWARE JAVA
Test Smell, Visualização de Software, Evolução de Software.
O teste de software é parte do ciclo de desenvolvimento de software, sendo o processo de executar as tarefas do sistema cujo objetivo principal é identificar se o software se comporta conforme foi especificado. O teste também tem como objetivo identificar defeitos no código produzido. Durante esse processo, os desenvolvedores e testadores podem incluir más escolhas de projeto ou implementação do código de teste, levando a inserção dos denominados test smells. Test smells são más escolhas de design ou de implementação do código de testes e sua presença pode o tornar ineficaz em encontrar bugs, gerando retrabalho e custos adicionais. Test smells podem dificultar a compreensão e manutenibilidade do código. Além disso, assim como qualquer artefato de software, os códigos de teste requerem a avaliação da qualidade e manutenção. A manutenção dos códigos de teste pode ocorrer devido a identificação de problemas no código e a evolução do código de produção. Ao longo da evolução do código de teste alguns test smells podem ser removidos e outros podem ser inseridos. Para visualizar a evolução de sistemas de software têm sido utilizadas técnicas de visualização de software, cujo objetivo é transformar o código de produção em uma representação visual para facilitar a sua compreensão. Apesar dessas técnicas contribuírem para visualizar a evolução de sistemas de software, essa abordagem não abrange os códigos de teste para visualização de test smells. Dessa forma, o objetivo desse trabalho é propor uma abordagem para visualizar a evolução dos códigos de teste em relação a presença de test smells, como se houve o aumento/diminuição de test smells e os possíveis autores pela sua inclusão. Foi proposta uma abordagem que definiu três estatrégias visuais (TSInstant, TSEvolution e TSAuthor) e uma ferramenta que implementa essa abordagem através de três técnicas de visualização de software (Graph View, Treemap View e Timeline View) para 21 tipos test smells. Essas visualizações podem ajudar os testadores a melhorar a qualidade do código de teste.