in reply to Further adventures with testing
- Testing takes time. I'm already working on tight deadlines. You want me to take extra time to test that each and every permutation of every single-dingle subroutine or method works the way I expect it to? fsck that, I'd rather move on to my next project. Let the QA department do their own durn work.
- Testing is different. I've never had to do it in the past. Sure, I've run across some really head-scratching bugs in the past that took me an hour or a day or a week to track down- but I'd rather fix bugs than slow down production.
- Testing is optional. "Optional", of course, means "not required": my managers haven't told me that it's "test your code or hit the road". If they do, I'll probably get another job: who are they to question my ability to do my job correctly the first or second (or, okay, there was that one time, seventh) time around?
- Testing is counter-cultural. The other programmers aren't doing it; why should I?
If you learn quickly, you only need to make one mistake before taking up testing as part of your development process. I learn pretty slowly, though: it's taken me many mistakes, and even more meditations and articles than I care to link to. What changed my mind? I can't say. Experience, to be sure. However, experience just showed me that I needed to do something different - not what I should be doing different, or how.
Monks - if you found yourself agreeing with my list above - re-read Ovid's node. Re-read Zaxo's reply. Dissect trs80's sample testing code. Super Search for nodes that talk about testing. You can afford to be picky in authorship: everyone who's anyone has written about the benefits of testing somewhere within the Monastery.
And give testing a shot. Through the Monastery I've become aware of the importance of good coding practices: use strict; use warnings; profile before optimizing; seek thee a better algorithm; test, test, and test again.
setenv EXINIT 'set noai ts=2'