| layout | default |
|---|---|
| title | TAP producers |
Systems which output TAP.
- Ahven unit test library for Ada produces TAP 12 output.
- arctap.arc - can be found in the Anarki version of Arc, and is used for its test suite, which also has some test scripts written in Perl and test::More.
Russ Alberry has a C TAP library available here.
- Original version (unmaintained)
- Maintenance version by Shlomi Fish
- Maintenance version by Rusty Russell as part of CCAN
- Article about LibTap (This library appears to no longer be under active development. It also suffers from an non-POSIX thread implementation. If you remove the thread ifdefs from tap.c it does compile and run however.)
Libtap++ is a mostly-complete port of test::More to C++. Its main advantage over libtap is that it provides polymorphic is and isnt functions.
MyTAP is a TAP producer for C. It is the unit testing framework used inside the MySQL Server
Another library for producing tap in C that compiles without much work on the dumbest (no special library requirements) of Unix-like and Windows development environments. It is feature-full (ok, is, isnt, like, unlike, todo, skip, dies_ok, cmp_ok, etc...), consistent (todo until endtodo, skip until endskip), extendable, and keeps track of file-line information (like test::More does). It also uses macros in nice ways so the user can leave out the message portion at the end of the test ok(1) and ok(1, "hello %s", "world") are both valid.
cl-tap-producerX is a testing library for Common Lisp which produces test results in the test Anything Protocol (TAP) format. The most common usage is to print the TAP output to standard output, for use with tools such as the Perl prove utility, but other usages are possible. cl-tap-producerX supports most parts of the TAP specification, including TODO tests, skipped tests, and diagnostics. cl-tap-producerX automatically infers diagnostics in the most common usages. cl-tap-producerX is extremely light-weight with almost no boilerplate required in the most common usage scenario. Boilerplate is available for those who prefer it. cl-tap-producerX is split into two parts - a test library which generates structured test result data, and a TAP producer which formats the structured test data to TAP output. In the most common usage, this process is transparent.
testbild, the universal test output production and consumption facility, is a Common Lisp library designed to provide a common interface for Unit testing output. Currently it supports TAP (versions 12, 13) and xUnit style output. It is asdf-installable and also available via Quicklisp.
Taps is a test tool for the .NET framework. Taps compiles C# test scripts on the fly and runs them. The output of the scripts conforms to the TAP protocol. The set of test functions available to the test scripts is inspired on the test::More module. Some features of Taps:
- Allows a test script to run tests in multiple threads
- Does deep comparison of complex data structures and if they are not equal outputs them annotated with a clear path to the differing item
- Has multiple output modes: YAML, msbuild-friendly, terse
- Supports testing of "internal" classes and methods
The project home is hosted at Google Code.
A Node.js test framework and harness toolkit that produces and consumes the TAP format.
tap-producing test harness for node and browsers.
A Node.js and browser testing framework that has TAP 'reporter'.
A JavaScript linting tool that runs on Node.js that has a TAP 'formatter'.
Instead of QUnit producing output only in your browser, it can produce TAP.
Similar to test.Simple above, test.Perlish provides test::Simple style testing but targets GNOME Seed and can be used with prove -e seed.
- Test.Perlish Gitorious project page
A port of the Perl Test::More framework to Lua.
A unit testing framework for Lua.
A unit testing framework for OCaml. It is based heavily on the Perl unit testing framework of the same name, and produces TAP output which can be read and analyzed by a wide range of existing Perl tools. The goal of this framework is to make writing unit tests as simple and as easy as possible (hence the name).
-
[TestSimple](http://caml.inria.fr/cgi-bin/hump.en.cgi?contrib=561) testSimple project page (last updated 2007)
Also Object Pascal, Delphi, FPC (Free Pascal Compiler), etc.:
- bacon produces version 12 TAP output
- Test.php on CPAN
Apache-test's PHP writes TAP by default and includes the standalone test-more.php
test-more-php provides the test::Simple & test::More APIs for PHP
PHP5 Unit Testing Framework
- TAP-compliant testing in PL/SQL (needs work)
- Bats - the Bash Automated Testing System
-
[tap-functions](http://testanything.org/wiki/index.php/Tap-functions)
(An excellent and useful library, I use it often. --Jeremiah)
- Sharness - Shell-based Test Harness Library, derived from Git project (see below)
While it's not a working implementation, the Git project has starter code that supplies the basic functionality of ok/not Ok and some skipping functionality, even with colored output! Look in t/test-lib.sh and other test files for example code and use.
- bash-test-utils - bash test library, unintrusive, optionally many utilities for testing in Linux/Xen/KVM context.
TAP producer authors should be aware of (and hopefully sign) the TAP Namespace Nonproliferation Treaty