Should everyone who uses your X module have to also install a special module that will probably never be used after your module is installed? While I understand the urge, I'm always mildly annoyed when, installing some random module, I get a dependency on Test::My::Thing. I suggest sticking with the core Test::* modules for installation tests, particularly if your module seems relatively system-independent. You can always add extra Test::* dependencies for an additional set of "maintainer" tests that should be run by someone modifying the module's code.