Ok, maybe I made this too categorical. Of course tests would be useful on any stage of program life cycle. I just think that price-usefulness ratio would be too hight to develop complete test suite after program is ready. You saying that writing tests very cheap, hmm, for me its usually more than half of the time I work on a program, so I'd say it rather expensive.
What about maintenance -- yes, I would write tests when I have to maintain program without tests, but again that would be individual tests, not a complete test suite, nobody would pay me for that. The only case I would write full tests is if I'm going to seriously refactor some old stuff; but I would do it just before refactoring and not just after writing a program, because I don't know what requirements would be, if at all.