tappy - TAP tools for Python


tappy provides tools for working with the Test Anything Protocol (TAP) in Python.

tappy generates TAP output from your unittest test cases. You can use the TAP output files with a tool like the Jenkins TAP plugin or any other TAP consumer.

tappy also provides a tappy command line tool as a TAP consumer. This tool can read TAP files and display the results like a normal Python test runner. tappy provides other TAP consumers via Python APIs for programmatic access to TAP files.

For the curious: tappy sounds like “happy.”


tappy is available for download from PyPI. tappy is currently supported on Python 3.7, 3.8, 3.9, 3.10, and PyPy. It is continuously tested on Linux, OS X, and Windows.

$ pip install tap.py

TAP version 13 brings support for YAML blocks for YAML blocks associated with test results. To work with version 13, install the optional dependencies. Learn more about YAML support in the TAP version 13 section.

$ pip install tap.py[yaml]


tappy can run like the built-in unittest discovery runner.

$ python -m tap

This should be enough to run a unittest-based test suite and output TAP to the console.