I use
Devel::Cover to make sure I have tests for all my features. This usually means adding checks to existing test files, as opposed to creating new test files.
Regarding the naming of test files, just use names that are meaningful. I always like to have an extremely simple test which does only one thing related to my code (as opposed to the generic pod/load/critic tests). I usually name it basic.t. This makes things easier to debug when things go horribly wrong.
After release, if someone submits a bug report, I normally create a dedicated test file that sensitizes that bug.