Uma ferramenta de análise automatizada de técnicas de seleção de testes de regressão baseada em mineração de repositórios de software
Contribuinte(s) |
Kulesza, Uira CPF:06924289410 http://lattes.cnpq.br/1487995477980653 CPF:02219235432 http://lattes.cnpq.br/0189095897739979 Silva, Lyrene Fernandes da CPF:02097798454 Guerra, Eduardo Martins CPF:01271743620 http://lattes.cnpq.br/3413978291577451 Coelho, Roberta de Souza CPF:02727172400 http://lattes.cnpq.br/9854634275938452 |
---|---|
Data(s) |
17/12/2014
18/11/2014
17/12/2014
29/04/2014
|
Resumo |
The main goal of Regression Test (RT) is to reuse the test suite of the latest version of a software in its current version, in order to maximize the value of the tests already developed and ensure that old features continue working after the new changes. Even with reuse, it is common that not all tests need to be executed again. Because of that, it is encouraged to use Regression Tests Selection (RTS) techniques, which aims to select from all tests, only those that reveal faults, this reduces costs and makes this an interesting practice for the testing teams. Several recent research works evaluate the quality of the selections performed by RTS techniques, identifying which one presents the best results, measured by metrics such as inclusion and precision. The RTS techniques should seek in the System Under Test (SUT) for tests that reveal faults. However, because this is a problem without a viable solution, they alternatively seek for tests that reveal changes, where faults may occur. Nevertheless, these changes may modify the execution flow of the algorithm itself, leading some tests no longer exercise the same stretch. In this context, this dissertation investigates whether changes performed in a SUT would affect the quality of the selection of tests performed by an RTS, if so, which features the changes present which cause errors, leading the RTS to include or exclude tests wrongly. For this purpose, a tool was developed using the Java language to automate the measurement of inclusion and precision averages achieved by a regression test selection technique for a particular feature of change. In order to validate this tool, an empirical study was conducted to evaluate the RTS technique Pythia, based on textual differencing, on a large web information system, analyzing the feature of types of tasks performed to evolve the SUT Coordenação de Aperfeiçoamento de Pessoal de Nível Superior O objetivo dos testes de regressão (RT) é reutilizar o conjunto de testes da última versão de um software em sua versão atual, para maximizar o valor dos testes já desenvolvidos e garantir que antigas funcionalidades continuem corretas após as novas modificações. Mesmo com o reuso, é comum que nem todos os testes precisem ser executados novamente e para evitar o desnecessário, é estimulada a utilização de técnicas de seleção dos testes de regressão (RTS), que buscam selecionar dentre todos os testes, apenas aqueles capazes de revelar faltas, isto reduz custos e torna a prática realmente atrativa para as equipes de teste. Diversos estudos recentes avaliam a qualidade da seleção realizadas por técnicas de RTS, identificando qual delas apresenta melhores resultados através de métricas como a inclusão e a precisão. As técnicas de RTS deveriam buscar no sistema sob teste (SUT) por testes que revelem faltas, entretanto, como este é um problema sem solução viável, a alternativa é buscar por testes que revelem as modificações, onde as faltas podem ocorrer. Contudo, tais modificações podem alterar o próprio fluxo de execução dos algoritmos, fazendo com que alguns testes não exercitem mais os mesmos trechos. Neste contexto, esta dissertação de mestrado busca investigar se as modificações realizadas no SUT poderiam afetar a qualidade da seleção dos testes realizada por uma RTS, e se sim, quais características apresentam as modificações que provocaram os erros, levando a RTS a incluir ou excluir testes erroneamente. Para tanto, foi desenvolvida uma ferramenta na linguagem Java para automatizar o cálculo da inclusão e precisão médias alcançadas por uma técnica de RTS para uma dada característica da modificação. A fim de validar a ferramenta, foi conduzido um estudo empírico para avaliar a técnica de RTS Pythia, baseada em diferenciação textual, sobre um sistema de informação web de larga escala, analisando a característica dos tipos das tarefas realizadas para evoluir o SUT |
Formato |
application/pdf |
Identificador |
CRUZ JÚNIOR, João Maria Guedes da. Uma ferramenta de análise automatizada de técnicas de seleção de testes de regressão baseada em mineração de repositórios de software. 2014. 98 f. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal do Rio Grande do Norte, Natal, 2014. http://repositorio.ufrn.br:8080/jspui/handle/123456789/18106 |
Idioma(s) |
por |
Publicador |
Universidade Federal do Rio Grande do Norte BR UFRN Programa de Pós-Graduação em Sistemas e Computação Ciência da Computação |
Direitos |
Acesso Aberto |
Palavras-Chave | #Teste de software. Seleção de testes de regressão. Diferenciação textual. Inclusão. Precisão. Características das modificações #Software Testing. Regression Tests Selection. Textual Differencing. Inclusion. Precision. Features of Changes #CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO |
Tipo |
Dissertação |