TAP

Awesome TAP Awesome

Useful resources for the Test Anything Protocol
A simple text-based interface between testing modules in a test harness

The list is very JavaScript focused right now. That's just because I'm only familiar with TAP stuff in the JS world. Contributions welcome for any language.

Reporters

JavaScript

Producers

Things that produce TAP output.

JavaScript

  • AVA - Futuristic test runner ($ ava --tap).
  • tap - TAP test framework for Node.js.
  • tape - TAP-producing test harness for Node.js and browsers.
  • ESLint - Pluggable JavaScript linter ($ eslint --format=tap).
  • Mocha - Feature-rich test framework for Node.js and browsers ($ mocha reporter=tap).
  • qunit-tap - TAP output for QUnit.
  • jasmine-reporters - TAP output for Jasmine.
  • karma-tap-reporter - TAP output for Karma.
  • mos - Markdown file generator and tester ($ mos test --tap).
  • zora - TAP-producing test runner that works with ES2015 without Babel.

Fish

  • Fishtape - TAP producer and test harness for fish.

Bash

  • bats - Bash Automated Testing System.

More...

Consumers

Things that consume TAP output.

JavaScript

More...

Tools

JavaScript

  • tap-dev-tool - Prettify TAP in the browser console.
  • tap-merge - Merge multiple TAP streams.
  • smokestack - Run TAP tests in a browser and write the output to stdout.
  • chutney - Run TAP tests at Sauce Labs. Lightweight smokestack alternative.

Python

  • tappy - Tools for working with TAP.

Articles

Tutorials

  • test-anything - Learn to test anything with TAP through an interactive workshop.

Documentation

Community

License

CC0

To the extent possible under law, Sindre Sorhus has waived all copyright and related or neighboring rights to this work.