SOLID exercises in Python

In my last post I discussed some exercises put together by Luca Minudel. He was using them as part of a study into how developer’s skill at removing SOLID violations was related to their skill at TDD. I initially did the exercises in Java, then translated them...

SOLID principles and TDD

Do you automatically get better design with TDD? Does an otherwise average software developer produce superior designs if they write the tests first rather than afterwards? Does it make a difference what style of TDD you use?incident #1I was at a session at XP2012...

Comparing Refactoring Kata Feedback Tools

For a little while now I’ve been collecting Refactoring Kata exercises in a github repo, (you’re welcome to clone it and try them out). I’ve recently facilitated working on some of these katas at various coding dojo meetings, and participants seem to...

Principles of Agile Test Automation

Please note – As of March 2013, I have rewritten this post in the light of further experience and discussions. The updated post is available here. I feel like I’ve spent most of my career learning how to write good automated tests in an agile environment....

What is Text-Based Testing?

Programmers have a vested interest in making sure the software they create does what they think it does. When I’m coding I prefer to work in the context of feedback from automated tests, that help me to keep track of what works and how far I’ve got....