London software testing news UK

Test Driven Development

Posted in Acceptance testing by testing in London on August 30, 2009

From An interview with Gerard Meszaros

All techniques have limitations, especially when they are abused or overused. The biggest hazard with automated unit testing is writing tests that are hard to understand and which are therefore hard to maintain as you evolve the code. A lot of the techniques I describe are ways to avoid this issue.

As for using TDD and automated unit tests in bare-metal tools like C, the higher the overhead of debugging, the more benefit there is to doing TDD because preventing mistakes (also known as bugs) saves even more effort. One area particularly ripe for the application of TDD is embedded software. Developers can save a lot of effort by removing most of the bugs while working in an IDE so that when they deploy the code into the hardware the only bugs left are ones related to integration, not basic logic errors. This requires building some test infrastructure and layering in the software properly to allow stubbing out of the actual hardware interfaces, but the payback is huge.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: