SYNOPSIS #!/usr/bin/perl use strict; use warnings; use TAP::Runner; use TAP::Formatter::HTML; TAP::Runner->new( { # harness_class => 'TAP::Harness::JUnit', # harness_formatter => TAP::Formatter::HTML->new, harness_args => { rules => { par => [ { seq => qr/^Test alias 2.*$/ }, { seq => '*' }, ], }, jobs => 4, }, tests => [ { file => 't/examples/test.t', alias => 'Test alias', args => [ '--option', 'option_value_1' ], options => [ { name => '--server', values => [ 'first.local', 'second.local', ], multiple => 0, }, { name => '--browser', values => [ 'firefox', 'chrome', ], multiple => 1, }, ], }, { file => 't/examples/test.t', alias => 'Test alias 2', args => [ '--option', 'option_value_1' ], }, { file => 't/examples/test.t', alias => 'Test alias 22', args => [ '--option', 'option_value_2' ], }, ], } )->run; DESCRIPTION This module allows to run tests more flexible. Allows to use TAP::Harness, not just for unit tests. METHODS new Create a new TAP::Runner object. tests atribute required # Tests to run with runner my @tests = ( { file => 't/test.t' } ); # Tests auto coerce to L my $runner = TAP::Runner->new( tests => \@tests, ); run Run all the tests ATTRIBUTES harness_class Harness class to use for run tests harness_formatter Custom harness formatter harness_args More arguments that can be provided to harness object tests Test configuration to run