Early in my career as a programmer, I remember coming across the phrase, “You can’t test quality in.” I read this inan article that compared 1970s and 1980s U.S. automobile manufacturing to Japanese automobile manufacturing.

The author was saying the U.S. car manufacturers were producing cars of lower quality than their Japanese counterparts because U.S. car manufacturers were trying to test quality into their products. Only after the car was built would they test to see if it was high quality. If it wasn’t, they’d fix defects (say a poorly fitting door) to make the product higher quality.

This was in contrast to Japanese manufacturers who built quality into the process. A later colleague of mine referred to this by saying, “Quality is baked into our process.”

Quality is not something that can be added to a product. Trying to add quality after the product has been built would be like adding baking powder to a cake after the cake has been baked. It doesn’t work.

Alexander Tarlinder’s new book, “Developer Testing: Building Quality into Software,” teaches programmers how to bake or build quality right into the process. The book starts with fundamentals (what is unit testing?) but also delves deep into more advanced topics like testing with mock objects. Similarly, it adds to the debate about testing state vs. behavior.

The book comes in at just under 300 pages, but is encyclopedic in what it covers. This book is a must read for every programmer, even those who are already doing a great job at developer testing.