views:

56

answers:

3

I found http://stackoverflow.com/questions/2893841/open-source-projects-with-good-quality-tests but I wanted to ask something a bit different.

I'm having a hard time visualizing how to build production code using TDD practices, particularly for networked database-driven applications where big chunks of functionality are dependent on one or more external systems. The two main strategies I've seen discussed for accomplishing that are decoupling code from the systems in question and using mocks. However, my intuition is that doing either one properly would also be complex and error-prone.

I'd like to take a look at some real-life code that was built using test-driven development practices from the ground up. Such a project would have had to deal with such issues from very early on, and I think looking at the results would be instructive. Any examples out there, whether positive or negative?

+1  A: 

Since Autofixture was created to facilitate TDD, I'm sure that the source code for the project itself was developed according.

Wim Coenen
+2  A: 

Some testing frameworks come to mind ...

Don Roby
Kent Beck has often ranted about the sort-of perverse joy that he and Erich Gamma got on that legendary plane flight that gave birth to JUnit, when they wrote a test for a feature they were going to implement 10 seconds from now, using a feature they had implemented 10 seconds ago. They were high-fiving each other, celebrating and generally annoying the other passengers. One of whom later walked right past security flashing some kind of badge, which was when they realized they had spent an entire plane flight pissing off a (probably armed) federal agent :-)
Jörg W Mittag
+1  A: 

Both the Ioke and Seph programming languages, as well as their implementations ikj (Ioke interpreter for the JVM), ikc (Ioke interpreter for the CLI) and whatever the Seph implementations is called, and their standard libraries were written 100% test-driven or rather behavior-driven.

Jörg W Mittag