Flake It 'Till You Make It: Using Automated Repair to Induce and Fix Latent Test Flakiness

8Citations
Citations of this article
20Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Since flaky tests pass or fail nondeterministically, without any code changes, they are an unreliable indicator of program quality. Developers may quarantine or delete flaky tests because it is often too time consuming to repair them. Yet, since decommissioning too many tests may ultimately degrade a test suite's effectiveness, developers may eventually want to fix them, a process that is challenging because the nondeterminism may have been introduced previously. We contend that the best time to discover and repair a flaky test is when a developer first creates and best understands it. We refer to tests that are not currently flaky, but that could become so, as having latent flakiness. We further argue that efforts to expose and repair latent flakiness are valuable in ensuring the future-reliability of the test suite, and that the testing cost is greater if latent flakiness is left to manifest itself later. Using concrete examples from a real-world program, this paper posits that automated program repair techniques will prove useful for surfacing latent flakiness.

Cite

CITATION STYLE

APA

Parry, O., Kapfhammer, G. M., Hilton, M., & McMinn, P. (2020). Flake It ’Till You Make It: Using Automated Repair to Induce and Fix Latent Test Flakiness. In Proceedings - 2020 IEEE/ACM 42nd International Conference on Software Engineering Workshops, ICSEW 2020 (pp. 11–12). Association for Computing Machinery, Inc. https://doi.org/10.1145/3387940.3392177

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free