Um mapeamento sistemático sobre ferramentas para detecção de flaky tests
Autor(a) principal: | |
---|---|
Data de Publicação: | 2023 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | por |
Título da fonte: | Repositório Institucional da Universidade Federal do Ceará (UFC) |
Texto Completo: | http://www.repositorio.ufc.br/handle/riufc/73947 |
Resumo: | Flaky tests are tests that behave in a non-deterministic way, that is, they have uncertain results, and may return pass and fail results even when executed in the same code of tests that have not changed. A considerable part of test suite failures are caused by flaky tests. If we consider that the continuous integration model is widely adopted in industrial projects, with thousands of tests, the presence of flaky tests can be even more critical, since during regression tests, a single flaky test can paralyze the entire creation process of builds and releases of updates, causing delays in deliveries. In this study, a systematic mapping was carried out to investigate the tools related to Flaky tests in 37 articles, with the objective of answering 3 research questions. The first research question seeks to show the tools found and available to the community, where 30 tools were returned and which were organized according to their publication or creation dates. The second research question is intended to provide an overview of each of the 30 tools collected, encompassing the objectives, techniques or approaches and the study from which each tool was collected, where it was possible to observe, for example, rerun is the most used technique to support detection. The third and final research question is intended to provide the highest level features of the tools and the causes they address, showing, for example, that a total of 46% of the tools address the test order dependency cause and that 70% of the tools are analyzed in the java language. With the discoveries of this study, it is expected to contribute to players in the Software Testing area, researchers and developers, providing inputs for future studies and a more centralized source of available tools, so that those interested can select one or more tools for future studies or some professional necessity. |
id |
UFC-7_e3ae3213fab437b8a7fb1af23bcd1715 |
---|---|
oai_identifier_str |
oai:repositorio.ufc.br:riufc/73947 |
network_acronym_str |
UFC-7 |
network_name_str |
Repositório Institucional da Universidade Federal do Ceará (UFC) |
repository_id_str |
|
spelling |
Um mapeamento sistemático sobre ferramentas para detecção de flaky testsFlaky testsFerramentas - DetecçãoTeste de software – AutomaçãoFlaky tests are tests that behave in a non-deterministic way, that is, they have uncertain results, and may return pass and fail results even when executed in the same code of tests that have not changed. A considerable part of test suite failures are caused by flaky tests. If we consider that the continuous integration model is widely adopted in industrial projects, with thousands of tests, the presence of flaky tests can be even more critical, since during regression tests, a single flaky test can paralyze the entire creation process of builds and releases of updates, causing delays in deliveries. In this study, a systematic mapping was carried out to investigate the tools related to Flaky tests in 37 articles, with the objective of answering 3 research questions. The first research question seeks to show the tools found and available to the community, where 30 tools were returned and which were organized according to their publication or creation dates. The second research question is intended to provide an overview of each of the 30 tools collected, encompassing the objectives, techniques or approaches and the study from which each tool was collected, where it was possible to observe, for example, rerun is the most used technique to support detection. The third and final research question is intended to provide the highest level features of the tools and the causes they address, showing, for example, that a total of 46% of the tools address the test order dependency cause and that 70% of the tools are analyzed in the java language. With the discoveries of this study, it is expected to contribute to players in the Software Testing area, researchers and developers, providing inputs for future studies and a more centralized source of available tools, so that those interested can select one or more tools for future studies or some professional necessity.Flaky tests são testes que se comportam de forma não determinística, ou seja, possuem resultados incertos, podendo retornar resultados de aprovação e falha mesmo quando forem executados em um mesmo código de testes que não sofreu alteração. Uma parte considerável das falhas em suítes de testes são ocasionadas por flaky tests. Se considerar que o modelo de integração contínua é amplamente adotado em projetos industriais, com milhares de testes, a presença de flaky tests podem ser mais críticas ainda, visto que durante os testes de regressão, um único flaky test pode paralisar todo o processo de criação de builds e lançamentos de atualizações, ocasionando atraso nas entregas. Neste estudo, foi executado um mapeamento sistemático para investigar as ferramentas relacionadas a Flaky tests em 37 artigos, com o objetivo de responder a 3 questões de pesquisa. A primeira questão de pesquisa, busca mostrar as ferramentas encontradas e disponíveis para a comunidade, onde foram retornadas 30 ferramentas e que foram organizadas de acordo com suas datas de publicação ou criação. A segunda questão de pesquisa tem o intuito de fornecer uma visão geral de cada uma das 30 ferramentas coletadas, englobando os objetivos, técnicas ou abordagens e o estudo da qual cada ferramenta foi coletada, onde foi possível observar, por exemplo, que a reexecução é a técnica mais utilizada como apoio à detecção. A terceira e última questão de pesquisa tem como intuito fornecer as características de mais alto nível das ferramentas e as causas que elas abordam, mostrando, por exemplo, que um total 46% das ferramentas abordam a causa de dependência da ordem de teste e que 70% das ferramentas são analisadas na linguagem java. Com as descobertas deste estudo, espera-se contribuir com atuantes da área de Testes de Software, pesquisadores e desenvolvedores, fornecendo insumos para estudos futuros e uma fonte mais centralizada das ferramentas disponíveis, para que os interessados possam selecionar uma ou mais ferramentas para estudos futuros ou alguma necessidade profissional.Bezerra, Carla Ilane MoreiraMartins, Pedro Anderson Costa2023-08-11T17:11:19Z2023-08-11T17:11:19Z2023info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisapplication/pdfMARTINS, Pedro Anderson Costa. Um mapeamento sistemático sobre ferramentas para detecção de flaky tests. 2023. 65 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2023.http://www.repositorio.ufc.br/handle/riufc/73947porreponame:Repositório Institucional da Universidade Federal do Ceará (UFC)instname:Universidade Federal do Ceará (UFC)instacron:UFCinfo:eu-repo/semantics/openAccess2023-08-11T17:11:19Zoai:repositorio.ufc.br:riufc/73947Repositório InstitucionalPUBhttp://www.repositorio.ufc.br/ri-oai/requestbu@ufc.br || repositorio@ufc.bropendoar:2024-09-11T18:21:27.093392Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC)false |
dc.title.none.fl_str_mv |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
title |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
spellingShingle |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests Martins, Pedro Anderson Costa Flaky tests Ferramentas - Detecção Teste de software – Automação |
title_short |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
title_full |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
title_fullStr |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
title_full_unstemmed |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
title_sort |
Um mapeamento sistemático sobre ferramentas para detecção de flaky tests |
author |
Martins, Pedro Anderson Costa |
author_facet |
Martins, Pedro Anderson Costa |
author_role |
author |
dc.contributor.none.fl_str_mv |
Bezerra, Carla Ilane Moreira |
dc.contributor.author.fl_str_mv |
Martins, Pedro Anderson Costa |
dc.subject.por.fl_str_mv |
Flaky tests Ferramentas - Detecção Teste de software – Automação |
topic |
Flaky tests Ferramentas - Detecção Teste de software – Automação |
description |
Flaky tests are tests that behave in a non-deterministic way, that is, they have uncertain results, and may return pass and fail results even when executed in the same code of tests that have not changed. A considerable part of test suite failures are caused by flaky tests. If we consider that the continuous integration model is widely adopted in industrial projects, with thousands of tests, the presence of flaky tests can be even more critical, since during regression tests, a single flaky test can paralyze the entire creation process of builds and releases of updates, causing delays in deliveries. In this study, a systematic mapping was carried out to investigate the tools related to Flaky tests in 37 articles, with the objective of answering 3 research questions. The first research question seeks to show the tools found and available to the community, where 30 tools were returned and which were organized according to their publication or creation dates. The second research question is intended to provide an overview of each of the 30 tools collected, encompassing the objectives, techniques or approaches and the study from which each tool was collected, where it was possible to observe, for example, rerun is the most used technique to support detection. The third and final research question is intended to provide the highest level features of the tools and the causes they address, showing, for example, that a total of 46% of the tools address the test order dependency cause and that 70% of the tools are analyzed in the java language. With the discoveries of this study, it is expected to contribute to players in the Software Testing area, researchers and developers, providing inputs for future studies and a more centralized source of available tools, so that those interested can select one or more tools for future studies or some professional necessity. |
publishDate |
2023 |
dc.date.none.fl_str_mv |
2023-08-11T17:11:19Z 2023-08-11T17:11:19Z 2023 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
MARTINS, Pedro Anderson Costa. Um mapeamento sistemático sobre ferramentas para detecção de flaky tests. 2023. 65 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2023. http://www.repositorio.ufc.br/handle/riufc/73947 |
identifier_str_mv |
MARTINS, Pedro Anderson Costa. Um mapeamento sistemático sobre ferramentas para detecção de flaky tests. 2023. 65 f. Trabalho de Conclusão de Curso (Graduação em Engenharia de Software)-Universidade Federal do Ceará, Campus de Quixadá, Quixadá, 2023. |
url |
http://www.repositorio.ufc.br/handle/riufc/73947 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da Universidade Federal do Ceará (UFC) instname:Universidade Federal do Ceará (UFC) instacron:UFC |
instname_str |
Universidade Federal do Ceará (UFC) |
instacron_str |
UFC |
institution |
UFC |
reponame_str |
Repositório Institucional da Universidade Federal do Ceará (UFC) |
collection |
Repositório Institucional da Universidade Federal do Ceará (UFC) |
repository.name.fl_str_mv |
Repositório Institucional da Universidade Federal do Ceará (UFC) - Universidade Federal do Ceará (UFC) |
repository.mail.fl_str_mv |
bu@ufc.br || repositorio@ufc.br |
_version_ |
1813028769358675968 |