
Test::modern provides the best features of test::more, test::fatal, test::warnings, test::api, test::longstring, and test::deep, as well as ideas from test::requires, test::describeme, test::moose, and test::cleannamespaces.
test::modern also automatically imposes strict and warnings on your script, and loads io::file. (much of the same stuff modern::perl does.)
although test::modern is a modern testing framework, it should run fine on pre-modern versions of perl. it should be easy to install on perl 5.8.9 and above; and if you can persuade its dependencies to install (not necessarily easy!), should be ok on anything back to perl 5.6.1.