App::Yath::Options::Run - Run options for Yath.


This is where command lines options for a single test run are defined.



Run Options


This will set the AUTHOR_TESTING environment to true


Use Test2::Plugin::Cover to collect coverage data for what files are touched by what tests. Unlike Devel::Cover this has very little performance impact (About 4% difference)


Use Test2::Plugin::DBIProfile to collect database profiling data

--env-var VAR=VAL

Set environment variables to set when each test is run.

Can be specified multiple times


Use Test2::Plugin::UUID inside tests (default: on)

--fields name:details
--fields JSON_STRING
-f name:details

Add custom data to the harness run

Can be specified multiple times

--input ARG

Input string to be used as standard input for ALL tests. See also: --input-file

--input-file ARG

Use the specified file as standard input to ALL tests


Use Test2::Plugin::IOEvents inside tests to turn all prints into test2 events (default: off)

Provide one or more links people can follow to see more about this run.

Can be specified multiple times

--load ARG
--load-module ARG
-m ARG

Load a module in each test (after fork). The "import" method is not called.

Can be specified multiple times

--load-import Module
--load-import Module=import_arg1,arg2,...
--loadim Module
--loadim Module=import_arg1,arg2,...
-M Module
-M Module=import_arg1,arg2,...

Load a module in each test (after fork). Import is called.

Can be specified multiple times. If the same key is listed multiple times the value lists will be appended together.


Use Test2::Plugin::MemUsage inside tests (default: on)

--retry ARG
-r ARG

Run any jobs that failed a second time. NOTE: --retry=1 means failing tests will be attempted twice!


If true then any job retries will be done in isolation (as though -j1 was set)


Set a specific run-id. (Default: a UUID)

--test-args ARG

Arguments to pass in as @ARGV for all tests that are run. These can be provided easier using the '::' argument separator.

Can be specified multiple times


Use the stream formatter (default is on)


The TAP format is lossy and clunky. Test2::Harness normally uses a newer streaming format to receive test results. There are old/legacy tests where this causes problems, in which case setting --TAP or --no-stream can help.


The source code repository for Test2-Harness can be found at


Chad Granum <>


Chad Granum <>


Copyright 2020 Chad Granum <>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.