++ed by:
1 non-PAUSE user
Author image Matthew Horsfall (alh)


Test::S - Change test settings on the command line


version 0.003


Run author test

  perl -MTest::S=author test.t

Or with prove

  prove -MTest::S=author -r .

Change a few settings

  prove -MTest::S=author,smoke

Or disable certain kinds explicitly

  prove -MTest::S=no_smoke

Don't run interactive tests

  prove -MTest::S=non_interactive -r .


Test::S is a shortened interface to the functionality provided by Test::Settings for use on the command line to modify the environment on the fly. This should not be used in modules! It will not behave!

This allows one to enable or disable certain types of tests on the command line without needing to set environment variables by hand.

Allowed modifiers

To use the modifiers on the command line, with many tools you can load the module with -M and provide a comma separated list of the modifiers you want:

  perl -MTest::S=all,no_smoke

The following can all be used in combination with each other (though some combinations obviously cancel each other out)

  • smoke

  • non_interactive

  • extended

  • author

  • release

  • all

  • no_smoke

  • no_non_interactive

  • no_extended

  • no_author

  • no_release

  • none


non_interactive means do not run interactive tests, and no_non_interactive means run interactive tests. This can be slightly confusing.

all and none, if used, should be the first items in the list else they will override the other settings.


Test::Settings - Ask or tell when certain types of tests should be run

Test::DescribeMe - Tell test runners what kind of test you are

Test::Is - Skip test in a declarative way, following the Lancaster Consensus


Matthew Horsfall (alh) - <wolfsage@gmail.com>


You may distribute this code under the same terms as Perl itself.