At home I’m developing software more and more using the lagom programming language Python. What I lacked in that environment was a simple TDD (Test-Driven Development) tool to do what I call ”continous” development. Others refer to the concept as zero-click TDD.
Continous TDD for me means you don’t have to click or toggle anything to get the tests running. They just run whenever you save your code- or testfile.
So I’ve been developing a single-module project I call ”pytddmon” (for Python TDD monitor) since autumn 2009. It features auto-test-discovery and test-running using the built-in Python module unittest.
With pytddmon running in the background, you don’t need to switch between code editor and terminal (or test-runner-GUI), you just need to save your code or test file, and pyTDDmon notices that something changed. If all tests pass, pyTDDmon turns GREEN. If a single test fails, it turns RED. Otherwise – if there is some error in a code file, or more than one test fails etc. – it turns GRAY.
Here is a demo of pyTDDmon in action, on the Ubuntu operating system:
 ”Lagom” is a Swedish word that is hard to translate into english; means some mix of pragmatic/working/ubiquitous
 If you view the video directly on YouTube instead of embedded here, you will get annotations, explaining all the steps I take
 The video is from december 2009. pytddmon has changed slightly visually since then.