I think this thread is headed towards completely over-engineering this.
For those who really want to customize what gets run when, I think brian's Test::Manifest solution looks like a winner. WIth environment variables, I prefer simplicity: * AUTOMATED_TESTING -- signals that it's *unattended*, so long, annoying tests can run and interactive ones should not * qr/(PERL_)?AUTHOR_TEST(ING)?/ -- hides tests away from non-developers; mostly distribution sanity (Kwalitee!) checks prior to release that shouldn't be run by end-users. (Maybe it should be "PERL_RELEASE_TESTING" instead.) Frankly, I don't think it's going to get "standardized" until it shows up in two places: * Synopsis and documentation in Test::Pod* * Boilerplate in Module::Starter, ExtUtils::ModuleMaker, etc. Regards, David