Writing software in an organisation or for ourselves, many people feel that they "should" somehow be doing Test Driven Development (TDD) because "everybody else" is and it's cool, somewhere between necessary and useful and they heard testing was good. When informed that must of TDD isn't about testing (despite the name!), confusion reigns.
Behaviour Driven Development is a different way of approaching the "how to validate your code" problem. It's an idea that isn't particularly new any more, but it doesn't seem to have the traction of TDD for some reason, particularly in Python, despite possibly being a bit more self-explanatory and easier to bootstrap when sitting down to write code. So let's talk about what it is and various ways to try out BDD in Python — from the periodically maligned doctests to simple unittest module usages to more specialised modules.
20th–21st August 2011