Test::S(3)
π Test::S(3) π
okay so real quick β this is Test::S, and we're living in the User Contributed Perl Documentation section of the manual, bestie. buckle up, it's a tiny one but it's iconic π
β¨ NAME β¨
Test::S β literally just "change test settings on the command line." that's the whole vibe π¦
πΈ VERSION πΈ
version 0.003 β yes she's baby, yes she's serving πΌ
π§ SYNOPSIS π§
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 .
like?? so clean. so effortless. main character syntax fr fr π
π« DESCRIPTION π«
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. that's it, that's the whole job β¨
β οΈ rude warning incoming: this should not be used in modules! It will not behave! like, it will absolutely feral out on you. don't do it. i'm begging π
this lets you enable or disable certain types of tests on the command line without needing to set environment variables by hand. no more exporting env vars like a caveman, we're modern here ππ
π 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 β yes, chaos is permitted π):
smokenon_interactiveextendedauthorreleaseallno_smokeno_non_interactiveno_extendedno_authorno_releasenone
twelve of them. all valid. all yours. no cap π₯
π Notes
non_interactive means do not run interactive tests, and no_non_interactive means run interactive tests. this can be slightly confusing. slightly?? SLIGHTLY?? it's giving double-negative gymnastics and i respect it π
all and none, if used, should be the first items in the list β else they will override the other settings. so put them up front or they'll steamroll everything behind them like the main characters they are π
π¦ SEE ALSO π¦
Test::Settingsβ Ask or tell when certain types of tests should be runTest::DescribeMeβ Tell test runners what kind of test you areTest::Isβ Skip test in a declarative way, following the Lancaster Consensus
go read them. they're the friend group. this module is the one that makes the intros π
π AUTHOR π
Matthew Horsfall (alh) β <wolfsage@gmail.com> β we stan π«Ά
β LICENSE β
You may distribute this code under the same terms as Perl itself. slay, legally speaking π
and that's the whole thing! this page was served up by perl v5.42.2 on 2026-02-15 β mwah, go run your tests bestie ππ
π¦ where this page comes from
- alpine 3.24: perl-test-settings-doc 0.003-r1 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms