ur test run(3) run one or more test scripts

SYNOPSIS


# run everything in a given namespace
cd my_sandbox/TheNamespace
ur test run --recurse
# run only selected tests
cd my_sandbox/TheNamespace
ur test run My/Module.t Another/Module.t t/foo.t t/bar.t
# run only tests which load the TheNamespace::DNA module
cd my_sandbox/TheNamespace
ur test run --cover TheNamespace/DNA.pm
# run only tests which cover the changes you have in Subversion
cd my_sandbox/TheNamespace
ur test run --cover-svn-changes
# run 5 tests in parallel as jobs scheduled via LSF
cd my_sandbox/TheNamespace
ur test run --lsf --jobs 5

DESCRIPTION

Runs a test harness around automated test cases, like ``make test'' in a make-oriented software distrbution, and similar to ``prove'' run in bulk.

When run w/o parameters, it looks for ``t'' directory in the current working directory, and runs ALL tests under that directory.

OPTIONS

--recurse
 Run all tests in the current directory, and in sub-directories.  Without
 --recurse, it will first recursively search for directories named 't' under
 the current directory, and then recursively seatch for *.t files under those
 directories.
--long
 Include "long" tests, which are otherwise skipped in test harness execution
-v
 Be verbose, meaning that individual cases will appear instead of just a full-script summary
--cover My/Module.pm
 Looks in a special sqlite database which is updated by the cron which runs tests,
 to find all tests which load My/Module.pm at some point before they exit.  Only
 these tests will be run.

* you will still need the --long flag to run long tests.

* if you specify tests on the command-line, only tests in both lists will run

* this can be specified multiple times

--cover-TOOL-changes
 TOOL can be svn, svk, or cvs.
 The script will run either "svn status", "svk status", or "cvs -q up" on a parent
 directory with "GSC" in it, and get all of the changes in your perl_modules trunk.
 It will behave as though those modules were listed as individual --cover options.
--lsf
 Tests should not be run locally, instead they are submitted as jobs to the
 LSF cluster with bsub.
--lsf-params
 Parameters given to bsub when sceduling jobs.  The default is
 "-q short -R select[type==LINUX64]"
--jobs <number>
 This many tests should be run in parallel.  If --lsf is also specified, then
 these parallel tests will be submitted as LSF jobs.

PENDING FEATURES

automatic remote execution for tests requiring a distinct hardware platform
logging profiling and coverage metrics with each test