A few years ago, I worked at an agency on a client project.
We were writing automated tests and doing test-driven development. We were releasing features, and everything was going well.
Mid-way through the project, we were told to stop writing tests as it was taking "too long".
We did, and the number of bugs increased almost instantly.
We went from essentially no bugs to having a number of tickets being rejected through our quality assurance and the client's user-acceptance testing, as well as in production by the website's users.
The time we spent re-working the issues, fixing the bugs and doing remedial work in production would likely have been less than the time it would have taken to write the tests initially and avoided any reputational damage.
We started writing tests again later during that project, but the middle phase was the most stressful part, and the most bugs were created.
Here's the thing
It's not just about how long it takes to write the tests.
Having tests will save time overall by having fewer bugs that need to be fixed, less remedial work in production, and less reshuffling of priorities to re-work tickets that affect the project plan and timescales as well as the team's output and velocity.
- Oliver
Was this interesting?
About me
I'm an Acquia-certified Drupal Triple Expert with 17 years of experience, an open-source software maintainer and Drupal core contributor, public speaker, live streamer, and host of the Beyond Blocks podcast.