This is a short review of the first chapter of The Art of Unit Testing. Which is available for free.
The chapter is short and concise. It is a good warm up for what the reader is to expect in the coming chapters.
The initial fail project that is talked about is covered in very brief. It touches on some reasons why it failed, things like unmaintainable unit tests, but it almost seems as if the project itself confused functional tests with unit tests, which I guess would be a reason to author a book about good unit tests and what a unit test is and is not.
It has a great definition of what a good unit test is.
DEFINITION: A GOOD UNIT TEST
A unit test is an automated piece of code that invokes a different method and then checks some assumptions about the logical behavior of that method or class under test. A unit test is written using a unit testing framework. It can be written easily and runs quickly. It can be executed, repeatedly, by anyone on the development team.
I found this to be a very good definition and plan to adopt it when I am asked this question. In fact, I’m going to add it to my wiki.
The author also touches on TDD in the very first chapter, which I was surprised, and delighted to see. His coverage is very basic, much like you’ll find in my Introduction to TDD series on this blog. The author dedicates the unreleased chapter 12 to this subject. Looking forward to it.
Overall, the first chapter has inspired me to purchase the early release digital edition of the book. So expect a full review shortly.