It's also fairly common to have a hybrid between scripts and modules. You can create .t files for individual sets of tests, but place common functionality into a .pm file within the t/ directory that each of your .t files uses. As an extensive example of how this might work, see Test::Class -- though it's perfectly fine to just create a simple module with some helper functions, too, so you don't repeat them in your test scripts.
Personally, I think using Module::Starter to create your test module is overkill, as most of Module::Starter is oriented to creating a framework for packaging up modules for distribution which you don't really need.
Code written by xdg and posted on PerlMonks is public domain. It is provided as is with no warranties, express or implied, of any kind. Posted code may not have been tested. Use of posted code is at your own risk.