TAP-producing test harness for Node.js and browsers. Current stable version is 5.9.0, released in July 2024. Tape is a minimal, dependency-light testing library that outputs standard TAP (Test Anything Protocol) format, making it compatible with many reporters and CI systems. It supports both CommonJS and ES modules in Node.js, works in browsers via bundlers, and includes built-in async/Promise support. Unlike heavier frameworks like Jest or Mocha, tape has no global state, no configuration, and a single assert API inspired by the Node.js assert module. It is unopinionated about test organization and does not require describe/it nesting; tests are simply functions. Tape is ideal for projects that want a simple, composable, and predictable test harness with minimal setup.
npm install tapeVerified import paths — ran on the pinned version, not inferred.
Shows synchronous and async tests with plan, assertions equal and ok.
Upgrade to Node.js >= 12, ensure CJS require pattern still works but check for any import/export changes.
Use test.skip(name, cb) instead of test(name, {skip: true}, cb)Always call t.plan(count) where count equals all assertions (including nested callbacks). Use t.end() if plan is hard to predict.
Use `import test from 'tape'` (no curly braces).
Ensure t.plan(N) matches the total expected assertions, or replace with t.end() for dynamic counts.
No dependency data recorded yet.