site

Search Algorithms for Regression Test Case Prioritization

Li, Zheng; Harman, Mark; Hierons, Robert M. (2007) “Search Algorithms for Regression Test Case Prioritization”, IEEE Transactions on Software Engineering, vol. 33, no. 4, pp. 225-237, doi: 10.1109/TSE.2007.38

1. Fichamento de Conteúdo

Testes de regressão são executados em software para verificar se uma mudança introduziu algum erro no software. É um processo demorado. A priorização dos casos de teste visa permitir que falhas (testes que não passam) sejam descobertos o quanto antes. Li, Harman e Hierons (2007) defendem que não há solução ótima para o problema, podendo ele ser mapeado no problema da mochila, que é provadamente NP-difícil. Assim, eles investigam o desempenho de heurísticas na solução desse problema. Em particular, heurísticas baseadas em algoritmos de busca (Hill Climbing e Genetic Algorithms) e algoritmos gulosos (Greedy, Additional Greedy, e 2-Optimal Greedy). Experimentos são realizados com seis programas que variam de 374 a 11.148 linhas de código (LOC, lines of codes) e possuem suítes de teste de tamanho médio que variam de 230 a 4350 testes. Os resultados mostram que as heurísticas Additional Greedy, 2-Optimal e Genetic Algorithm são melhores que Greedy Algorithm puro. A explicação é que nesse tipo de problema há muitos ótimos locais, principalmente em grandes programas, de modo que, algoritmos baseados em busca global tendem a ser melhores do que algoritmos de busca local.

2. Fichamento Bibliográfico

3. Fichamento de Citações