An empirical study of async wait flakiness in front-end testing

Yu Pei, Sarra Habchi, Renaud Rwemalika, Jeongju Sohn, Mike Papadakis

Research output: Contribution to journalConference articlepeer-review

Abstract

Automated front-end regression testing is an essential part of web development, allowing fast release cycles while maintaining high-quality requirements. However, due to the asynchronous nature of web applications, front-end testing is sensitive to Async Wait flakiness which reduces the usefulness of such test suites by introducing false alarms. In this work, we conducted an empirical study to investigate the causes and the impact of Async Wait flakiness in front-end testing. To do so, we build a dataset of 62 tests exhibiting reproducible Async Wait flakiness associated with a clean fix commit, which becomes the foundation of our study. Our preliminary results suggest that tests relying on an explicit time to wait in order to synchronize the tests tend to create more flakiness (38 instances) than synchronizing on the status of DOM elements (24 instances). Further study shows that where time-based issues are typically addressed by increasing the time to wait, DOM-based issues are resolved by actually introducing a missing synchronization point. We conclude our study with an analysis of the different implementations of synchronization mechanisms to provide tool manufacturers with concrete insights on how to improve their solutions.

Original languageEnglish
JournalCEUR Workshop Proceedings
Volume3245
StatePublished - 2022
Event21st Belgium-Netherlands Software Evolution Workshop, BENEVOL 2022 - Mons, Belgium
Duration: 12 Sep 202213 Sep 2022

Keywords

  • async wait
  • empirical study
  • flaky tests
  • front-end testing

Fingerprint

Dive into the research topics of 'An empirical study of async wait flakiness in front-end testing'. Together they form a unique fingerprint.

Cite this