SEMar 3, 2021

An Empirical Analysis of UI-based Flaky Tests

arXiv:2103.02669v150 citations
Originality Synthesis-oriented
AI Analysis

This work addresses flaky tests in UI testing, a domain-specific issue often overlooked in favor of unit tests, offering incremental insights for developers and researchers.

The paper tackled the problem of flaky UI tests by analyzing 235 samples from 62 web and Android projects, identifying common root causes, manifestation strategies, and fixes to provide a foundation for detection and prevention techniques.

Flaky tests have gained attention from the research community in recent years and with good reason. These tests lead to wasted time and resources, and they reduce the reliability of the test suites and build systems they affect. However, most of the existing work on flaky tests focus exclusively on traditional unit tests. This work ignores UI tests that have larger input spaces and more diverse running conditions than traditional unit tests. In addition, UI tests tend to be more complex and resource-heavy, making them unsuited for detection techniques involving rerunning test suites multiple times. In this paper, we perform a study on flaky UI tests. We analyze 235 flaky UI test samples found in 62 projects from both web and Android environments. We identify the common underlying root causes of flakiness in the UI tests, the strategies used to manifest the flaky behavior, and the fixing strategies used to remedy flaky UI tests. The findings made in this work can provide a foundation for the development of detection and prevention techniques for flakiness arising in UI tests.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes