dc.creator | Machado Filho, Lori Ronaldo Flores | |
dc.date.accessioned | 2023-06-15T15:03:16Z | |
dc.date.available | 2023-06-15T15:03:16Z | |
dc.date.issued | 2023-05-01 | |
dc.identifier.uri | http://repositorio.ufsm.br/handle/1/29438 | |
dc.description.abstract | 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.. | eng |
dc.language | por | por |
dc.publisher | Universidade Federal de Santa Maria | por |
dc.rights | Attribution-NonCommercial-NoDerivatives 4.0 International | * |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/4.0/ | * |
dc.subject | Teste de software | por |
dc.subject | Reuso | por |
dc.subject | Priorização | por |
dc.subject | Raciocínio baseado em casos | por |
dc.subject | Agrupamento de dados | por |
dc.subject | Testes de regressão | por |
dc.subject | Software testing | eng |
dc.subject | Reuse | eng |
dc.subject | Prioritization | eng |
dc.subject | Case-based reasoning | eng |
dc.subject | Clustering | eng |
dc.subject | Regression tests | eng |
dc.title | Raciocínio baseado em casos e agrupamento de dados no reuso e priorização de casos de teste de software | por |
dc.title.alternative | Case-based reasoning and clustering for the reuse and prioritization of software test cases | eng |
dc.type | Dissertação | por |
dc.description.resumo | A reutilização e a priorização de tarefas desempenham um papel crucial nos testes de
software. Quando essas tarefas não recebem a devida atenção, as atividades de teste de
regressão acabam consumindo a maior parte dos recursos e tempo destinados aos testes
em projetos de software. Apesar do uso comum de casos de teste no desenvolvimento
de testes de regressão, esses artefatos de software são subutilizados (ou perdidos) na
estruturação de experiências reutilizáveis de testes de software. Nesse sentido, este trabalho propõe uma estrutura de Raciocínio Baseado em Casos e Agrupamento que utiliza
casos de teste aumentados para manter dados e conhecimentos de instâncias concretas
de resolução de problemas de teste. A estrutura permite a resposta a consultas baseada em similaridade na seleção e priorização de casos de teste para problemas de teste
específicos. Além disso, o framework inclui uma análise de clusterização dos resultados
da consulta, permitindo a análise de possíveis estruturas de cluster nas suítes de teste
formadas e o uso consequente dos clusters identificados na repriorização em tempo de
execução das execuções de casos de teste. Este trabalho detalha o sistema Cases and
Clusters for Tests (C2Tests), utilizado na análise experimental de métodos de reutilização e
priorização baseados em casos e clusters. Para validar a proposta abordada, a métrica de
Porcentagem Média de Falhas Detectadas (PMFD) foi adotada. Os resultados experimentais em um estudo de caso de teste de regressão do mundo real demonstraram aumentos
significativos nas taxas de detecção de falhas em comparação aos métodos manuais de
priorização empírica por especialistas, graças à utilização da estrutura proposta. Além
disso, a abordagem com suítes de teste com um maior número de casos mostraram maior
eficácia no reuso e na priorização de casos de teste. Também, a utilização do registros de
log de execução revelou-se eficaz na identificação rápida de falhas, resultando em valores
médios de PMFD de 70,58%, um aumento de 25,65% em comparação à priorização empírica. Esses resultados contribuem positivamente para a realização de testes de regressão
com custos reduzidos em projetos de software. | por |
dc.contributor.advisor1 | Silva, Luís Alvaro de Lima | |
dc.contributor.advisor1Lattes | http://lattes.cnpq.br/8066370508832550 | por |
dc.contributor.referee1 | Machado, Karina dos Santos | |
dc.contributor.referee2 | Nunes, Raul Ceretta | |
dc.creator.Lattes | http://lattes.cnpq.br/1530671070359416 | por |
dc.publisher.country | Brasil | por |
dc.publisher.department | Ciência da Computação | por |
dc.publisher.initials | UFSM | por |
dc.publisher.program | Programa de Pós-Graduação em Ciência da Computação | por |
dc.subject.cnpq | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO | por |
dc.publisher.unidade | Centro de Tecnologia | por |