Submitted by Maria Medeiros (maria.dilva1@ufcg.edu.br) on 2018-05-21T11:28:18Z
No. of bitstreams: 1
BERG ÉLISSON SAMAPAIO CAVALCANTE - DISSERTAÇÃO (PPGCC) 2016.pdf: 1665807 bytes, checksum: 29f9430f322f8d4644a7bfeee7aaf497 (MD5) / Made available in DSpace on 2018-05-21T11:28:18Z (GMT). No. of bitstreams: 1
BERG ÉLISSON SAMAPAIO CAVALCANTE - DISSERTAÇÃO (PPGCC) 2016.pdf: 1665807 bytes, checksum: 29f9430f322f8d4644a7bfeee7aaf497 (MD5)
Previous issue date: 2016 / Capes / É evidente hoje o grande investimento em qualidade de software. Assim, para submeter um produto com qualidade aceitável, é necessário determinar a sua testabilidade, uma propriedade que indica a facilidade e precisão na avaliação dos resultados de um teste. Teste de Regressão é um processo custoso, que demanda esforço considerável para detectar defeitos introduzidos em um código testado anteriormente. A fim de aumentar a custo-efetividade deste processo, são aplicadas técnicas de priorização de casos de teste (CTs), que tem por objetivo reordenar o conjunto de testes seguindo algum critério de ordenação. Em particular, a técnica Changed Blocks realiza priorização baseada em mudanças. Segundo estudos realizados neste trabalho, essa técnica apresenta algumas limitações, como: i. os resultados não obtém cobertura máxima de defeitos no topo da lista ordenada; ii. CTs com mesmo número de mudanças cobertas são ordenados aleatoriamente, sem seguir uma regra de importância específica; iii. CTs que revelam mudanças inéditas, mas que apresentam baixa cobertura de mudanças são desfavorecidos. Este trabalho propõe a implementação de duas técnicas baseadas na Changed Blocks, para que mudanças múltiplas agregadas em uma mesma versão do sistema em teste sejam melhor consideradas, não resultando em perdas aos benefícios oferecidos pela técnica original. Várias métricas foram utilizadas na análise, são elas: APFD; F-measure; F-spreading; Group-measure; Group-spreading; e Tempo de Execução. Através de análise experimental, avaliou-se a eficácia das técnicas propostas utilizando uma variedade de versões mutantes de quatro projetos open sources. Os resultados indicam que não houve perda estatística significante na aplicação da melhoria e, na antecipação de CTs em cenários de múltiplas mudanças, em média, foi superior. / The investiment on software quality has grown. To ensure acceptable quality in a product, one needs to determine its testability, a property that indicates the feasibility and accuracy in test results evaluation. Regression testing is an expensive technique to detect faults introduced in a previously tested code. In order to increase its cost-effectiveness, test case prioritization techniques may be used. One of the proeminent techniques is based on changes, called Changed Blocks. According to previous studies, this technique presents limitations, such as: i. Test Cases (TCs) with significant impact on the final result end up in undesired positions in the queue; ii. TCs with same number of covered changes are randomly ordered, without following a specific rule; iii. TCs revealing undetected changes, with low coverage are disadvantaged. This work proposes techniques to improve Changed Blocks by grouping multiple changes in a version of the system under test, with no losses in technical benefits. Several metrics were used as follow: i. APFD ; ii. F-measure ; iii. F-spreading; iv. Group-measure; v. Group-spreading;and vi. Execution Time. We carried out an experimental study to evaluate the efficacy of the proposed techniques using a variety of mutant versions of four open sources Java projects. The results indicate the proposed techniques performed better in the contexts they intend to improve, while presenting no statistically significant loss in contexts common to the original Change Blocks technique.
Identifer | oai:union.ndltd.org:IBICT/oai:localhost:riufcg/745 |
Date | 21 May 2018 |
Creators | CAVALCANTE, Berg Élisson Sampaio. |
Contributors | MASSONI, Tiago Lima., MACHADO, Patrícia Duarte de Lima. |
Publisher | Universidade Federal de Campina Grande, PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO, UFCG, Brasil, Centro de Engenharia Elétrica e Informática - CEEI |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Biblioteca de Teses e Dissertações da UFCG, instname:Universidade Federal de Campina Grande, instacron:UFCG |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0018 seconds