The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 2.99_06

  • Added skip_all method to TAP::Parser.
  • Display reason for skipped tests.

Changes for version 2.99_05 - 2007-10-30

  • Fix for occasional rogue -1 exit code on Windows.
  • Fix for @INC handling under CPANPLUS.
  • Added real time to prove --timer output
  • Improved prove error message in case where 't' not found and no tests named.

Changes for version 2.99_04 - 2007-10-11

  • Fixed bug where 'All tests successful' would not be printed if bonus tests are seen.
  • Fixed bug where 'Result: FAIL' would be printed at the end of a test run if there were unexpectedly succeeding tests.
  • Added -M, -P switches to allow arbitrary modules to be loaded by prove. We haven't yet defined what they'll do once they load but it's a start...
  • Added testing under simulated non-forking platforms.

Changes for version 2.99_03 - 2007-10-06

  • Refactored all display specific code out of TAP::Harness.
  • Relaxed strict parsing of skip plan for pre v13 TAP.
  • Elapsed hi-res time is now displayed in integer milliseconds instead of fractional seconds.
  • prove stops running if any command-line switches are invalid.
  • prove -v would try to print an undef.
  • Added support for multiplexed and forked parallel tests. Use prove -j 9 to run tests in parallel and prove -j 9 --fork to fork. These features are experimental and currently unavailable on Windows.
  • Rationalized the management of the environment that we give to test scripts (PERL5LIB, PERL5OPT, switches).
  • Fixed handling of STDIN (we no longer close it) for test scripts.
  • Performance enhancements. Parser is now 30% - 40% faster.

Changes for version 2.99_02 - 2007-09-07

  • Ensure prove (and App::Prove) sort any recursively discovered tests
  • It is now possible to register multiple callback handlers for a particular event.
  • Added before_runtests, after_runtests callbacks to TAP::Harness.
  • Moved logic of prove program into App::Prove.
  • Added simple machine readable summary.
  • Performance improvement: The processing pipeline within TAP::Parser is now a closure which speeds up access to the various attribtes it needs.
  • Performance improvement: Test count spinner now updates exponentially less frequently as the count increases which saves a lot of I/O on big tests.
  • More improvements in test coverage from Leif.
  • Fixes to TAP spooling - now captures YAML blocks correctly.
  • Fix YAMLish handling of empty arrays, hashes.
  • Renamed TAP::Harness::Compatible to Test::Harness, runtests to prove.
  • Fixes to @INC handling. We didn't always pass the correct path to subprocesses.
  • We now observe any switches in HARNESS_PERL_SWITCHES.
  • Changes to output formatting for greater compatibility with Test::Harness 2.64.
  • Added unicode test coverage and fixed a couple of unicode issues.
  • Additions to documentation.
  • Added support for non-forking Perls. If forking isn't available we fall back to open and disable stream merging.
  • Added support for simulating non-forking Perls to improve our test coverage.
  • Version numbers below this point relate to TAP::Parser - which was the name of this version of Test::Harness during its development.

Documentation

contributing to TAP::Harness
Run tests through a TAP harness.

Modules

Implements the prove command.
Base class that provides common functionality to TAP::Parser and TAP::Harness
Run Perl test scripts with color
Harness output delegate for default console output
Harness output delegate for parallel console output
Harness output delegate for default console output
Run test scripts with statistics
Parse TAP output
Aggregate TAP::Parser results
A grammar for the Test Anything Protocol.
Internal TAP::Parser Iterator
Internal TAP::Parser Iterator
Internal TAP::Parser Iterator
Internal TAP::Parser Iterator
Multiplex multiple TAP::Parsers
TAP::Parser output
Bailout result token.
Comment result token.
Plan result token.
Test result token.
Unknown result token.
TAP version result token.
YAML result token.
Stream output from some source
Stream Perl output
Read YAMLish data from iterator
Write YAMLish data
Run Perl standard test scripts with statistics