Who will test your tests?
Did you work on a project where maintaining test suite was more painful than delivering new functionality? Let’s talk about the reasons of such non-deterministic test suites and some ways to fix it, so that you can trust your test suite again.
Outline/Structure of the Talk
Some of us must have been on that one project, where your test suite was causing more problem than solving it. You change one thing, and hundred tests will fail. Your continuous integration build will fail randomly, but will pass if you just re-trigger it.
This eventually leads to people loosing all the trust on test suite. They stop adding tests, because it’s more painful than writing production code. They start ignoring failing test, because they fail randomly and nobody knows why. Everybody knows tests are now more trouble than help.
In this talk, we will talk about some behaviors and reasons which leads to this "flaky test suite" situation. What are some development practices, which can avoid such situation. And finally we will also talk about how to fix this situation if you already in it.
This talk will be most beneficial for people who have a test suite for their project.
If you are a developer or a QA, you will learn what are the practices you can follow to keep your test suite maintainable.
If you are manager, you can understand on which things related to test suite you should keep an eye on so that your team keep delivering functionality without slowing down because of tests.
Quality Analysts, Testers, Developers