9 days ago · Tech · 0 comments

I’m convinced that in hell, there is a special place dedicated to making engineers fix flaky tests. Not broken tests. Not tests covering a real bug. Flaky tests. Tests that pass 999 times out of 1000 and fail on the 1,000th run for no reason you can explain with a clean conscience.If you've ever shipped a reasonably complex distributed system, you know exactly what I'm talking about. RavenDB has, at last count, over 32,000 tests that are run continuously on our CI infrastructure. I just checked, and in the past month, we’ve had hundreds of full test runs.That is actually a problem for our scenario, because with that many tests and that many runs, the law of large numbers starts to apply. Assuming we have tests that have 99.999% reliability, that means that 1 out of every 100,000 test runs may fail. We run tens of millions of those tests in a month.In a given week, something between ten and twenty of those tests will fail. Given the number of test runs, that is a good number in…

No comments yet. Log in to reply on the Fediverse. Comments will appear here.