NAME¶
Test::Aggregate::Nested - Aggregate "*.t" tests to make them run
faster.
VERSION¶
Version 0.364
SYNOPSIS¶
use Test::Aggregate::Nested;
my $tests = Test::Aggregate::Nested->new( {
dirs => $aggregate_test_dir,
verbose => 1,
} );
$tests->run;
DESCRIPTION¶
ALPHA WARNING: this is alpha code. Conceptually it is superior to
"Test::Aggregate", but in reality, it might not be. We'll see.
This module is almost identical to "Test::Aggregate" and will in the
future be the preferred way of aggregating tests (until someone comes up with
something better :)
"Test::Aggregate::Nested" requires a 0.8901 or better of
"Test::More". This is because we use its "subtest"
function. Currently we "croak" if this function is not available.
Because the TAP output is nested, you'll find it much easier to see which tests
result in which output. For example, consider the following snippet of TAP.
1..2
1..5
ok 1 - aggtests/check_plan.t ***** 1
ok 2 - aggtests/check_plan.t ***** 2
ok 3 # skip checking plan (aggtests/check_plan.t ***** 3)
ok 4 - env variables should not hang around
ok 5 - aggtests/check_plan.t ***** 4
ok 1 - Tests for aggtests/check_plan.t
1..1
ok 1 - subs work!
ok 2 - Tests for aggtests/subs.t
At the end of each nested test is a summary test line explaining which program
we ran tests for.
"Test::Aggregate::Nested" asserts a plan equal to the number of test
files aggregated, something which "Test::Aggregate" could not do.
Because of this, we no longer export "Test::More" functions. If you
need additional tests before or after aggregation, you'll need to run the
aggregated tests in a subtest:
use Test::More tests => 2;
use Test::Aggregate::Nested;
subtest 'Nested tests' => sub {
Test::Aggregate::Nested->new({ dirs => 'aggtests/' })->run;
};
ok $some_other_test;
CAVEATS¶
"Test::Aggregate::Nested" is much cleaner than
"Test::Aggregate", so I don't support the "dump" argument.
If this is needed, let me know and I'll see about fixing this.
The "variable will not stay shared" warnings from
"Test::Aggregate" (see its CAVEATS section) are no longer
applicable.
AUTHOR¶
Curtis Poe, "<ovid at cpan.org>"
BUGS¶
Please report any bugs or feature requests to "bug-test-aggregate at
rt.cpan.org", or through the web interface at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Aggregate
<
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Aggregate>. I will
be notified, and then you'll automatically be notified of progress on your bug
as I make changes.
SUPPORT¶
You can find documentation for this module with the perldoc command.
perldoc Test::Aggregate
You can also look for information at:
- •
- AnnoCPAN: Annotated CPAN documentation
http://annocpan.org/dist/Test-Aggregate
<http://annocpan.org/dist/Test-Aggregate>
- •
- CPAN Ratings
http://cpanratings.perl.org/d/Test-Aggregate
<http://cpanratings.perl.org/d/Test-Aggregate>
- •
- RT: CPAN's request tracker
http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test-Aggregate
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test-Aggregate>
- •
- Search CPAN
http://search.cpan.org/dist/Test-Aggregate
<http://search.cpan.org/dist/Test-Aggregate>
ACKNOWLEDGEMENTS¶
Many thanks to mauzo (<
http://use.perl.org/~mauzo/> for helping me find
the 'skip_all' bug.
Thanks to Johan LindstrA~Xm for pointing me to Apache::Registry.
COPYRIGHT & LICENSE¶
Copyright 2007 Curtis "Ovid" Poe, all rights reserved.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.