Skip to main content

Comparing Test Runners

Test RunnerIsolationCJSESMnode_modulesSizeBunDeno
🐷 Pokuβœ…βœ…βœ…1 package (poku)Install Sizeβœ…βœ…
Jest (30.0.5)βœ…βœ…experimental296 packagesInstall Size❓❓
Mocha (11.7.1)βŒβœ…βœ…91 packagesInstall Size❓❓
Vitest (3.2.4)βœ…deprecatedβœ…49 packagesInstall Size❓❓

Quick Comparisons​

Performance​

Poku is continuously tested to ensure the following expectations for basic usage:

  • ~4x faster than Jest (v30.0.5)
  • ~5x faster than Vitest (v3.2.4)
  • ~1x faster than Mocha (v11.7.1) β€” even with test file isolation πŸš€

All comparisons are rounded down (e.g., 4.99 would be rounded down to ~4x).


Installation Size​

Install Size


TypeScript Comparison​

Comparison using TypeScript (no compile) and ESM to show a simple error test:

  • Let's starting from installation πŸ”¬

Poku​

Installation​

npm i -D poku tsx

Creating the test file​

test/index.test.ts

import { assert } from 'poku';

assert.deepStrictEqual('1', 1, 'Number should not be a text');

Running tests​

npx poku

That's it πŸŽ‰

tip

For simple tests, Poku doesn't need to use test, describe or it, since the message is already in the assert.

  • Poku's assert is just an abstraction from original assert from Node.js.
  • It means: No new learning is needed πŸŽ‰

Adopt a Poku for yourself 🩡