I’m pretty good at cooking, if I do say so myself. That may be because I only cook a handful of dishes, or that may be because I’m extra attentive to the ingredients, the taste, and am obsessive about the details.
But, and this is an important distinction: I’m not a chef. I cannot make those beautiful and delicious meals chefs can, nor would I be able to if someone asked.
In the same vein, I can write tests, and I write lots of tests through TDD; but I’m not QA. My tests are documentation, bounds exploring, code that reflects decisions made, and an early warning system for potential problems in the architecture, but, my tests are not the tests a QA person would produce, and confusing the two would have the same effect as confusing my cooking abilities for a chef’s.
In case I haven’t hit the point hard enough home, let me say it outright:
QA has a very important job, a job that keeps most software afloat without the business even knowing it. All the TDD in the world can’t supplant the ability of QA to head off danger, and just saying “Developers can write tests too” doesn’t make Developers QA.
This is a very important lesson that some companies forget, and the markets remind them.
This post comes from my daily email list. If this sort of content appeals to you, you can sign up for the daily email below.