It's good to write the test before you add a new feature.
It's good to write a test as soon as you receive a bug report.
It's bad to release code with failing tests.
This would seem to be a contradiction.
Option #3, for the professionally lazy:
This allows one to build a test suite without having to fix all the bugs you find right away.