TDD should speed up development, not slow it down. However, some interpretations add too much wasted effort. After all, we’re trying to get a project done quickly, with good quality.
Lean TDD is a practice of TDD that extends TDD by bridging the developer workflow with the overall quality tests for a system, the acceptance tests, all while keeping waste low.
Lean TDD is built by taking valuable practices from many versions of TDD, and removing all of the wasteful practices.
Lean TDD encourages teams to think about quality during the entire development process, which results in lower stress and returning fun to software development.
The concepts in Lean TDD apply to all software development. Whether you are new to coding or an experienced developer, on a team or a solo developer, whether the development does all testing, or shares the role with test engineers.
Lean TDD is especially important if using AI for development, whether you using AI coding agents to help with production code, test code, or both.
About the author, Brian Okken
I’m a software engineer, podcaster, writer, gardener, husband, father, public speaker, and has been known to be a nice person on occasion.
My professional career has been writing software for electronic test equipment, mostly in wireless communications, but also with oscilloscopes, spectrum analyzers, and satellite test systems.
I wrote “Python Testing with pytest”, 1st and 2nd editions, which helped pytest to become the predominant test framework for Python.
I’ve spoken at many conferences, including PyCon US, PyCascades, and PyBay.
I’ve been a podcast host for Test and Code, Python Bytes, and Python People, and have been interviewed on various other shows.
My online courses can be found at courses.pythontest.com and other writing at pythontest.com and testandcode.org.
Some other info can be found at pythontest.com/about