From One Expert to Another: Markus Gärtner

Then, back in 2009, I attended a session on good acceptance tests by Gojko Adzic at the Software Craftsmanship conference in London. He handed out copies of his then-new book, Bridging the Communication Gap. I started reading it immediately on my way home. I was amazed! Gojko's book helped me a lot with figuring out what acceptance tests actually meant.

My main reason to write it was to help people new to ATDD learn by example. Kent Beck's TDD by Example served as a blueprint there. Kent Beck introduced me to Pearson, and he was eager to put the book in his signature series. Two other reasons I wrote the book—though not the main ones—were to have a book available with up-to-date examples (the FIT book is dated 2005 and does not include the latest development in FitNesse like SLiM, for example) and to expose different ways to use ATDD on your project. That said, while the first example in the book deals with a website, Selenium, and some tester and programmer separation, the second example shows how to use the tests to drive an API and do outside-in development when you have access to the code. Actually, I am discovering the domain code while automating the examples there.

Nothing is actually new in the book. Rick Mugridge and Ward Cunningham wrote on the approach of ATDD back in 2005. A German book dated 2005 called Testgetriebene Entwicklung mit JUnit und FIT (in English, Test-driven Development Using JUnit and FIT) even shows how to do outside-in development based on a lot of ideas that eventually made their way into Growing Object-oriented Software Guided by Tests by Steve Freeman and Nat Pryce. Yet, I still felt that something was missing from the whole picture. That missing thing was my main motivation for ATDD by Example: to provide the missing piece in the whole puzzle.

Zeger van Hese: You mentioned the Software Craftsmanship conference. How did you get involved with the software craftsmanship movement?

Markus Gärtner: Back in 2008, I followed reports from the Agile 2008 conference. I read something about Uncle Bob's [Robert Martin] keynote, where he wanted to add a fifth value pair to the Agile Manifesto: “craftsmanship over crap.” He opposed the, well, “crap” on agile teams and stated that the spirit of the early agile days was indeed replaced by less focus on technical excellence. Later, he refined this to "craftsmanship over execution," since the value pairs in the agile manifesto have one thing in common: We value both at times, and we don't value crap at all.

About the author

Zeger van Hese's picture
Zeger van Hese

With a background in commercial engineering and cultural science, Zeger Van Hese started his professional career in the motion picture industry, switching to IT in 1999. A year later he was bitten by the software testing bug and has never been cured. A test manager at CTG Belgium, Zeger has a passion for exploratory testing, testing in agile projects, and, above all, continuous learning from different perspectives. He considers himself a lifelong student of the software testing craft. He is the program chair of Eurostar 2012 in Amsterdam and co-founder of the Dutch Exploratory Workshop on Testing (DEWT). Zeger muses about testing on his Test Side Story blog, is co-author of CTG’s STBoX Agile flavor, and regularly speaks at conferences worldwide.