TAP, the Test Anything Protocol, is a simple text-based interface between testing modules in a test harness. TAP started life as part of the test harness for Perl but now has implementations in C/C++, Python, PHP, Perl and probably others by the time you read this.
Here's what a TAP test transcript looks like (using the development version):
TAP version 13 1..4 ok 1 - Input file opened not ok 2 - First line of the input valid --- message: 'First line invalid' severity: fail data: got: 'Flirble' expect: 'Fnible' ... ok 3 - Read the rest of the file not ok 4 - Summarized correctly # TODO Not written yet --- message: "Can't make summary yet" severity: todo ...
Testing with TAP
- Testing with TAP - How to run TAP based tests in your language of choice
- TAP Producers - Testing tools that generate TAP output
- TAP Consumers - Test harnesses that read TAP
- TAP Proposals - What next?
- TAP Philosophy - The Tao of TAP
- TAP History - The story of TAP
- YAMLish - TAP's embedded YAML dialect
- Things missing from TAP
Other Test Protocols
- TET - the Test Environment Toolkit