Workshop: TDD Rediscovered

The practice of TDD has diverged from its roots. The techniques that Kent Beck documented and has taught, differ from those that many struggle with today. As a result, tests slow down development, hamper rather than aid refactoring, and force terms like unit, integration, and acceptance into a practice that never had them, with disastrous results.

In this workshop we want to re-discover the practice of TDD as originally envisaged by Kent Beck. We will seek to understand:

Why tests are about behavior not structure.
Why adhering to Red-Green-Refactor makes tests cheap to write in comparison to the code they cover.
Why we test abstractions, not details.
Why tests should be easy to read, and how we achieve that.
When and how we refactor.
Why 'driving in gears’ is a concept that is not practiced enough.
How design patterns can be used for good, as part of our TDD practice.

We will also understand why you might not value TDD as many subsequent interpreters have communicated it, and how you can grow to love it in its intended form.

But most of all we hope to show that the original practice of TDD was not the onerous make-work it has become at the hands of considerable misunderstandings, but ‘greases the wheels’ of software development.

We will use Python for demos during this presentation, but the focus of this course will be on basics that can be applied in any language.