Integrating flakiness detection and repair

Bibliographic Details
Main Author: Mendes, Alexandre Filipe de Freitas
Publication Date: 2024
Format: Master thesis
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: http://hdl.handle.net/10400.22/26427
Summary: Testing is a core component of software development, safeguarding the reliability of the code. However, some tests may provide unexpected outcomes, non-deterministically passing or failing. Such tests are deemed flaky. Known to delay releases and reduce the overall effectiveness and efficiency of testing these tests have become a key problem. Affecting the entire industry, awareness, and research on the topic have risen significantly in recent years. This dissertation presents a systematic literature review on flaky test research's state of the art. It details the research methodology used and provides an overview of recent developments in the field. The review addresses four dimensions: causes, detection, repair, and tool integration. Each dimension is analyzed to classify flakiness and detail tools and methodologies capable of addressing different aspects of flakiness. In this manner, the dissertation comprehensively examines recent strategies for addressing flaky tests. Among the categories of flakiness, order-dependency has received the most research focus, with several tools available for detecting and repairing this category specifically. However, there is a notable lack of tools capable of both detecting and repairing flaky tests in a unified manner. By studying and evaluating individual tools, this dissertation assesses the potential compatibility between already existing and available methodologies, allowing for the development of a prototype for a unified order-dependency flakiness solution. Evaluating this prototype against the individual execution of its components reveals that integrating existing tools enhances usability while preserving comparable levels of recall and execution time. This analysis highlights the necessity for standardizing the inputs and outputs of order-dependency detection and repair tools. Additionally, it shows that complete detection
id RCAP_c4804911ba46fa1bb7528b937eceba43
oai_identifier_str oai:recipp.ipp.pt:10400.22/26427
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Integrating flakiness detection and repairIntegração de deteção e reparação de flakinessFlaky testsNon-determinismSoftware testingOrder dependencyTestes flakyTestes de softwareNão-determinismoDependência de ordemTesting is a core component of software development, safeguarding the reliability of the code. However, some tests may provide unexpected outcomes, non-deterministically passing or failing. Such tests are deemed flaky. Known to delay releases and reduce the overall effectiveness and efficiency of testing these tests have become a key problem. Affecting the entire industry, awareness, and research on the topic have risen significantly in recent years. This dissertation presents a systematic literature review on flaky test research's state of the art. It details the research methodology used and provides an overview of recent developments in the field. The review addresses four dimensions: causes, detection, repair, and tool integration. Each dimension is analyzed to classify flakiness and detail tools and methodologies capable of addressing different aspects of flakiness. In this manner, the dissertation comprehensively examines recent strategies for addressing flaky tests. Among the categories of flakiness, order-dependency has received the most research focus, with several tools available for detecting and repairing this category specifically. However, there is a notable lack of tools capable of both detecting and repairing flaky tests in a unified manner. By studying and evaluating individual tools, this dissertation assesses the potential compatibility between already existing and available methodologies, allowing for the development of a prototype for a unified order-dependency flakiness solution. Evaluating this prototype against the individual execution of its components reveals that integrating existing tools enhances usability while preserving comparable levels of recall and execution time. This analysis highlights the necessity for standardizing the inputs and outputs of order-dependency detection and repair tools. Additionally, it shows that complete detectionAzevedo, Isabel de Fátima SilvaREPOSITÓRIO P.PORTOMendes, Alexandre Filipe de Freitas2024-11-20T18:25:07Z2024-07-292024-07-29T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.22/26427urn:tid:203731913enginfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2025-03-07T09:59:21Zoai:recipp.ipp.pt:10400.22/26427Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T00:24:30.982580Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Integrating flakiness detection and repair
Integração de deteção e reparação de flakiness
title Integrating flakiness detection and repair
spellingShingle Integrating flakiness detection and repair
Mendes, Alexandre Filipe de Freitas
Flaky tests
Non-determinism
Software testing
Order dependency
Testes flaky
Testes de software
Não-determinismo
Dependência de ordem
title_short Integrating flakiness detection and repair
title_full Integrating flakiness detection and repair
title_fullStr Integrating flakiness detection and repair
title_full_unstemmed Integrating flakiness detection and repair
title_sort Integrating flakiness detection and repair
author Mendes, Alexandre Filipe de Freitas
author_facet Mendes, Alexandre Filipe de Freitas
author_role author
dc.contributor.none.fl_str_mv Azevedo, Isabel de Fátima Silva
REPOSITÓRIO P.PORTO
dc.contributor.author.fl_str_mv Mendes, Alexandre Filipe de Freitas
dc.subject.por.fl_str_mv Flaky tests
Non-determinism
Software testing
Order dependency
Testes flaky
Testes de software
Não-determinismo
Dependência de ordem
topic Flaky tests
Non-determinism
Software testing
Order dependency
Testes flaky
Testes de software
Não-determinismo
Dependência de ordem
description Testing is a core component of software development, safeguarding the reliability of the code. However, some tests may provide unexpected outcomes, non-deterministically passing or failing. Such tests are deemed flaky. Known to delay releases and reduce the overall effectiveness and efficiency of testing these tests have become a key problem. Affecting the entire industry, awareness, and research on the topic have risen significantly in recent years. This dissertation presents a systematic literature review on flaky test research's state of the art. It details the research methodology used and provides an overview of recent developments in the field. The review addresses four dimensions: causes, detection, repair, and tool integration. Each dimension is analyzed to classify flakiness and detail tools and methodologies capable of addressing different aspects of flakiness. In this manner, the dissertation comprehensively examines recent strategies for addressing flaky tests. Among the categories of flakiness, order-dependency has received the most research focus, with several tools available for detecting and repairing this category specifically. However, there is a notable lack of tools capable of both detecting and repairing flaky tests in a unified manner. By studying and evaluating individual tools, this dissertation assesses the potential compatibility between already existing and available methodologies, allowing for the development of a prototype for a unified order-dependency flakiness solution. Evaluating this prototype against the individual execution of its components reveals that integrating existing tools enhances usability while preserving comparable levels of recall and execution time. This analysis highlights the necessity for standardizing the inputs and outputs of order-dependency detection and repair tools. Additionally, it shows that complete detection
publishDate 2024
dc.date.none.fl_str_mv 2024-11-20T18:25:07Z
2024-07-29
2024-07-29T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10400.22/26427
urn:tid:203731913
url http://hdl.handle.net/10400.22/26427
identifier_str_mv urn:tid:203731913
dc.language.iso.fl_str_mv eng
language eng
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órios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833600523277697024