TDD Antipatterns: Complete series

Matheus Marabesi, a software craftsperson at Codurance, delves deeply into the list of 22 TDD anti-patterns compiled by James Carr. Through workshops, katas, and blogs, Matheus breaks down the list into a series of 6 chapters to learn how to identify them and avoid falling into the trap of certain tests that generate very large codebases and lead to slow feedback processes.

Chapter 1 - Liar, Excessive setup, Giant y Slow poke 

We kick off this series with the first 4 anti-patterns described by James Carr: Liar, Excessive Setup, Giant, and Slow Poke. Each anti-pattern includes an example of what it would look like in code, take advantage of these examples to identify if you might be falling into the trap. Read the blog in which we review the first 4 anti-patterns.

In this first workshop, Cameron Raw, software craftsperson, joins Matheus Marabesi to give an introduction to the anti-patterns and go through the first 4 on the list. Take a look at the first episode.

Chapter 2 - Mockery, Inspector, Generous leftovers y Local hero

In this second session, we focus on another four anti-patterns, named Mockery, Inspector, Generous Leftovers, and Local Hero. Each one addresses a specific aspect of the code that makes testing difficult and are one of the potential reasons why companies argue they do not have time to build test-based solutions. Read the blog of the second chapter.

In the second episode, Javier Martínez Alcántara, craftsman, and Giulio Perrone, software engineer, explore the next 4 anti-patterns on the list and share ideas and experiences with Matheus. Watch the second workshop.

Chapter 3 - Nitpicker, Secret catcher, Dodger y Loudmouth

This chapter focuses on: Nitpicker, Secret Catcher, Dodger, and Loudmouth. These 4 anti-patterns are often seen in developers who have little experience writing test-driven applications. So, if you are new to TDD, beware of these 4 traps.

Juan Pablo Blanco, Head of Engineering at Scentmate by dsm-firmenich, one of our clients, joins us in this third session to analyze, along with Javier Martínez Alcántara and Matheus, how each of these anti-patterns look in code. Watch the third chapter.

Chapter 4 - Greedy catcher, Sequencer, Hidden dependency y Enumerator 

Continuing with the series, we analyze 4 more anti-patterns: Greedy Catcher, Sequencer, Hidden Dependency, and Enumerator. Each focuses on a specific aspect of the code that makes testing difficult. Sometimes they are due to poor TDD practice or lack of knowledge about code design. Find code examples of these traps in the following blog.

In this fourth episode, Matheus focuses on showing how these new 4 anti-patterns can hide useful information that makes clean coding difficult or relates to the style of writing tests. Go to chapter 4 workshop.

Chapter 5 - Stranger, Operating system evangelist, Success against all odds y Free ride

In the fifth episode we look at 4 more anti-patterns: Stranger, OS Evangelist, Success against all odds and Free ride. Remember that the intention is to learn how to identify these common traps that we can fall into when applying TDD and that hinder our code. Read the blog of the fifth chapter.

Sofía Carballo, software craftsperson, and again Juan Pablo Blanco, accompany Matheus in this fifth episode. We encourage you to practice with the real examples suggested. Watch the fifth episode.

Chapter 6 - Flash y Jumper

We come to the end of this series with the last two anti-patterns on James Carr's list: Flash and Jumper. Both focus on the practice of testing code rather than how the code itself is written. In the next blog, we will review them through cases that we can experience in our development projects. Read chapter six blog.

In the last episode we have as special guests Pablo Díaz, senior software engineer, from Scentmate by dsm-firmenich and Ignacio Saporitti, software craftsperson. These last two anti-patterns are a mix of some of the ones already covered, we show you how they work and what to do to avoid them. Watch last episode.

Download the TDD Antipatterns eBook

ebook Test Driven Development (TDD)

If you are interested in the complete guide to antipatterns download the eBook in which Matheus describes each antipattern in simple terms and with code examples. If you are wondering why you should read this book, the answer is simple: it will help you with your TDD practice and writing quality code.

Download e-book