Test First, Code Later.


“I found another bug guys. That makes a total of 54!” “We’re doing a great job!”

In this hypothetical conversation – and an all too familiar one for many test engineers – my first thought is: are we doing a great job as testers? Or are we missing a trick?

Last night, The App Business (TAB) sponsored and spoke at the London Tester Gathering, run by Tony Bruce and it was with this question in mind that we opened up the concept of test first, code later. Having worked in the software industry for the last 6 or so years (it doesn’t seem a long time, but it is in the world of tech), it fascinates (and horrifies) me that testing, for many companies, is still an activity that happens at the end of the software development process.

For us at TAB, and for software professionals generally, we strive to achieve a very high level of quality, wanting to be the best at what we do. Yet, instead of spending more time really understanding what we’re building and preventing bugs, we’re spending most of our time chasing and managing them.

So what if we brought testing (and test engineers) to the beginning of the process, and thought about discovering problems before delivering code? Afterall, as a test engineer, I’ve always thought of my role as an important complement to the entire development process: I’m the person who’s job it is to ask questions – not to just click buttons. As QA Manager, for me, this early involvement of testing is the key to achieving the technical excellence we’re committed to here at TAB. I don’t want to see a list of 54 bugs: I want to see 5, and have the knowledge that the product we’ve built is the right one, delivered to the highest quality.

In the evening's presentation, I’ve outlined how we’re achieving this at The App Business: by continually inspecting and adapting our processes to ensure we bring test engineers forward at the start; by focusing on conversations, and reinforcing the commitment of the whole team. In the end, we believe it’s not tools but conversations that matter. Conversations with the right people will save you, affecting the kind of culture shift we need to test first, code later.

If you attended the talk, tweet me your feedback and if you’re a test engineer and you share our point of view, remember, we’re recruiting!