What is testing?

At MEDC 2007, I had the pleasure of delivering a session entitled 'Real World Testing of Managed Smart Device Applications'.  While developing the presentation, I spent some time thinking about a key theme of the talk -- what is testing.

I define testing as the art of mitigating pain.  Whenever a bug is found after a product has shipped, it hurts.  It hurts the customer in loss of productivity (while the bug is investigated / worked around) and it hurts the developer (cost of investigating and fixing in the field, delays work on new versions).  It costs much much less to identify and fix bugs during development.

When I think of testing as pain mitigation, I think of the auto industry and their crash tests.  Crash testing is designed to ensure that the least amount of harm comes to the car's passengers in the event of an accident.  When I keep this image in mind, it drives home (no pun intended) the need for quality tests and high levels of product coverage during testing.

Take care,
-- DK

Disclaimers:
This posting is provided "AS IS" with no warranties, and confers no rights.