Tuesday, December 9, 2008

Debugging Vs Unit Testing

We developers need to win this battle. Ofcource I am on the Unit Testing side and thatz the reason for this battle. We want to improve. We want to stop debugging, or we may call it post coding or post delivery nightmare.

  • How may of us are fond of SOPs? [System.out.println]
  • How many of us are good a putting / reading log files?
  • How many of us are good at using the debugger? Looking up the values inside objects at runtime?

We all are. Because thatz what we do most often. The percentage of time we
spend on debugging is far more than coding.

Every programmer knows they should write tests for their code. Few do. The universal response to "Why not?" is "I'm in too much of a hurry." This quickly becomes a vicious cycle- the more pressure you feel, the fewer tests you write. The fewer tests you write, the less productive you are and the less stable you code becomes. The less productive and accurate you are, the more pressure you feel.

  • Programmers burn out from just such cycles. Breaking out requires an outside influence.
  • The best way to convince you of the value of writing your own tests would be to sit down with you and do a bit of development.
  • Along the way, we would encounter new bugs, catch them with tests, fix them, have them come back, fix them again, and so on.

No comments: