Exploring the Impact of Integrating UI Testing in CI/CD Workflows on GitHub
Xiaoxiao Gan, Chris Brown
TL;DR
This paper tackles the question of how UI testing frameworks are integrated into CI/CD pipelines in open-source GitHub projects and what impact this integration has on development activity and CI/CD workflows. It proposes an exploratory study that mines GitHub repositories for UI testing usage in GitHub Actions, using Selenium, Cypress, and Playwright as focal frameworks. The methodology includes repository selection via API and Sourcegraph, manual validation, and a suite of descriptive, inferential, and time-series analyses, with data and scripts openly shared. The findings aim to provide empirical insights into the benefits, challenges, and patterns of UI testing within CI/CD for open-source software, guiding future tooling and workflow design.
Abstract
Background: User interface (UI) testing, which is used to verify the behavior of interactive elements in applications, plays an important role in software development and quality assurance. However, little is known about the adoption of UI testing frameworks in continuous integration and continuous delivery (CI/CD) workflows and their impact on open-source software development processes. Objective: We aim to investigate the current usage of popular UI testing frameworks-Selenium, Playwright and Cypress-in CI/CD pipelines among GitHub repositories. Our goal is to understand how UI testing tools are used in CI/CD processes and assess their potential impacts on open-source development activity and CI/CD workflows. Method: We propose an empirical study to examine GitHub repositories that incorporate UI testing in CI/CD workflows. Our exploratory evaluation will collect repositories that implement UI testing frameworks in configuration files for GitHub Actions workflows to inspect UI testing-related and non-UI testing-related workflows. Moreover, we further plan to collect metrics related to repository development activity and GitHub Actions workflows to conduct comparative and time series analyses exploring whether UI testing integration and usage within CI/CD processes has an impact on open-source development.
