
Software Engineering Radio - the podcast for professional software developers SE Radio 572: Gregory Kapfhammer on Flaky Tests
12 snips
Jul 13, 2023 Flaky tests can turn a trusted CI pipeline into a game of chance. Gregory Kapfhammer explores why tests pass and fail unpredictably, from timing and shared state to scarce resources and web interfaces. The conversation also covers tools for spotting flaky tests, rerunning them, and using mocks, isolation, and machine learning to keep test suites steadier.
Chapters
Transcript
Episode notes
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
Introduction
00:00 • 2min
Flaky Tests Hurt Continuous Integration and Continuous Development
02:00 • 2min
The Common Sources of Flaky Tests
04:00 • 3min
The Role of Time in Flaky Tests
06:51 • 2min
How to Detect Flaky Tests
09:06 • 3min
How to Automatically Rerun Test Cases
11:38 • 2min
How to Detect a Flaky Test
13:09 • 2min
How to Fix a Flaky Test Case
15:10 • 2min
How to Fix a Flaky Test Case
16:46 • 2min
How to Control Flakiness in Your Test Suite
18:36 • 3min
How to Avoid Flaky Tests
21:07 • 2min
How to Write a Test That Passes
22:55 • 2min
How to Detect and Fix Flaky Tests
25:21 • 3min
How to Use a Supervised Machine Learning Technique to Predict Flaky Test Cases
27:53 • 3min
The Importance of Static Features in Machine Learning
30:33 • 3min
How to Avoid the Introduction of Flaky Test Cases
33:31 • 2min
How to Avoid Writing Flaky Tests
35:23 • 3min
How to Use Docker Containers to Test Flakiness
38:05 • 3min
How to Fix Flaky Tests
40:51 • 2min
