NAME

TAP::Formatter::Bamboo - Harness output delegate for Atlassian's Bamboo CI server

SYNOPSIS

On the command line, with prove:

prove --formatter TAP::Formatter::Bamboo ...

Or, in your own scripts:

use TAP::Harness;
my $harness = TAP::Harness->new( {
    formatter_class => 'TAP::Formatter::Bamboo',
    merge => 1,
} );
$harness->runtests(@tests);

DESCRIPTION

TAP::Formatter::Bamboo provides JUnit output formatting for TAP::Harness, which can be used in Atlassian's Bamboo CI server.

This module is based on TAP::Formatter::JUnit by Graham TerMarsch <cpan@howlingfrog.com>, main differences are:

  • if environment variable TAP_FORMATTER_BAMBOO_OUTFILE is present then it will be used as filepath for output XML (otherwise "results.xml file will be created in current directory)

  • information about passing/failing tests is put to the STDOUT/STDERR respectively, so it can be watched in Bamboo's build logs (also live during build)

  • output of failed tests is saved in 'failure' tag, as Bamboo doesn't care about 'system-out' and 'system-err' tags (but shows content of 'failure')

  • short information about failure reason is put in the first line of 'failure' tag

METHODS

open_test($test, $parser)

Over-ridden open_test() method.

Creates a TAP::Formatter::Bamboo::Session session, instead of a console formatter session.

summary($aggregate)

Save resulting XML in results.xml file.

AUTHOR

Piotr Piatkowski <pp@idea7.pl>

Graham TerMarsch <cpan@howlingfrog.com> (original TAP::Formatter::JUnit)

Credits from the original module:

Many thanks to Andy Armstrong et al. for the fabulous set of tests in Test::Harness; they became the basis for the unit tests here.

Other thanks go out to those that have provided feedback, comments, or patches:

Mark Aufflick
Joe McMahon
Michael Nachbaur
Marc Abramowitz
Colin Robertson
Phillip Kimmey
Dave Lambley

COPYRIGHT

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

SEE ALSO

TAP::Formatter::JUnit, TAP::Formatter::Console, http://confluence.atlassian.com/display/BAMBOO/JUnit+parsing+in+Bamboo.