Raciocínio baseado em casos e agrupamento de dados no reuso e priorização de casos de teste de software
Ano de defesa: | 2023 |
---|---|
Autor(a) principal: | |
Orientador(a): | |
Banca de defesa: | |
Tipo de documento: | Dissertação |
Tipo de acesso: | Acesso aberto |
Idioma: | por |
Instituição de defesa: |
Universidade Federal de Santa Maria
Brasil Ciência da Computação UFSM Programa de Pós-Graduação em Ciência da Computação Centro de Tecnologia |
Programa de Pós-Graduação: |
Não Informado pela instituição
|
Departamento: |
Não Informado pela instituição
|
País: |
Não Informado pela instituição
|
Palavras-chave em Português: | |
Link de acesso: | http://repositorio.ufsm.br/handle/1/29438 |
Resumo: | Reuse and prioritization of tasks play a crucial role in software testing. When these tasks do not receive the proper attention, regression testing activities end up consuming most of the resources and time allocated for testing in software projects. Despite the common use of test cases in developing regression tests, these software artifacts are underutilized (or lost) in structuring reusable software testing experiences. In this sense, this work proposes a Case-Based Reasoning and Clustering structure that uses augmented test cases to maintain data and knowledge of concrete instances of testing problem resolution. The structure allows for similarity-based query response in selecting and prioritizing test cases for specific testing problems. Additionally, the framework includes clustering analysis of query results, allowing for the analysis of possible cluster structures in the formed test suites and the consequent use of identified clusters in runtime reprioritization of test case executions. This work details the Cases and Clusters for Tests (C2Tests) system, used in experimental analysis of case and cluster-based reuse and prioritization methods. To validate the proposed approach, the Average Percentage of Faults Detected (APFD) metric was adopted. The experimental results in a real-world regression test case study showed significant increases in fault detection rates compared to manual empirical prioritization methods by experts, thanks to the use of the proposed framework. Additionally, the approach utilizing test suites with a greater number of cases demonstrated higher effectiveness in test case reuse and prioritization. Furthermore, the utilization of execution log records proved effective in quickly identifying faults, resulting in average PMFD values of 70.58%, a 25.65% increase compared to empirical prioritization. These findings positively contribute to cost-effective regression testing in software projects.. |