Login | Register

Understanding the Lifecycle of Flaky Tests and Identifying Flaky Failures

Title:

Understanding the Lifecycle of Flaky Tests and Identifying Flaky Failures

Malmir, Samaneh (2024) Understanding the Lifecycle of Flaky Tests and Identifying Flaky Failures. Masters thesis, Concordia University.

[thumbnail of Malmir_MCompSc_F2024.pdf]
Preview
Text (application/pdf)
Malmir_MCompSc_F2024.pdf - Accepted Version
Available under License Spectrum Terms of Access.
1MB

Abstract

Software testing is a critical aspect of ensuring the quality of software. Ideally, tests should
produce consistent results when being executed repeatedly on the same version of the software.
However, certain tests may exhibit non-deterministic behavior, commonly known as ªflaky testsº.
These tests can provide ambiguous signals to developers and make the test results unreliable.
Despite being a recognized phenomenon for decades, academic attention towards test flakiness
has only recently increased. The current dissertation aims to contribute to the advancement of
research in two directions. First, we focus on predicting the lifetime of a flaky test, an issue that
has been left unaddressed in the flaky tests research area. Secondly, we question the efficiency of
previous studies in discerning flaky failures from legitimate failures, focusing on the Chromium
build result as our dataset.
In our investigation of the historical patterns of flaky tests in Chrome, we identified that 40% of
flaky tests remain unresolved, while 38% are typically addressed within the initial 15 days of introduction.
Subsequently, we developed a predictive model focused on identifying tests with quicker
resolutions. Our model demonstrated a precision of 73% and a Matthews Correlation Coefficient
(MCC) approaching 0.39 in forecasting the lifespan class of flaky tests.
Furthermore, we discovered that current vocabulary-based flaky test detection approaches misclassify
78% of legitimate failures as flaky failures when applied to the Chromium dataset. The
results also revealed that the source code of tests is not enough indicator for predicting flaky failures,
and other execution-related features must be contributed for better performance.

Divisions:Concordia University > Gina Cody School of Engineering and Computer Science > Computer Science and Software Engineering
Item Type:Thesis (Masters)
Authors:Malmir, Samaneh
Institution:Concordia University
Degree Name:M. Sc.
Program:Computer Science
Date:3 May 2024
Thesis Supervisor(s):Rigby, Peter
ID Code:993837
Deposited By: Samaneh Malmir
Deposited On:24 Oct 2024 16:20
Last Modified:24 Oct 2024 16:20
All items in Spectrum are protected by copyright, with all rights reserved. The use of items is governed by Spectrum's terms of access.

Repository Staff Only: item control page

Downloads per month over past year

Research related to the current document (at the CORE website)
- Research related to the current document (at the CORE website)
Back to top Back to top