Pure Test vs uvu
Pure Test
github.comuvu
github.comSide by side
| Figure | Pure Test | uvu |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | — |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · JavaScript Testing Frameworks | 8.0 (#6) | 7.6 (#11) |
| CLI | The CLI supports multiple reporters, test filters, file watching, sharding, and fail-fast execution. | The CLI collects and executes test suites, and using it is optional because test files can be run directly with Node.js. |
| Installation | The README gives `npm install @igorjs/pure-test --save-dev` as the installation command. | The README gives npm install --save-dev uvu as its installation command. |
| License | The repository identifies the project as Apache-2.0 licensed. | The repository identifies uvu as MIT licensed. |
| Purpose | Pure Test is a minimal, zero-dependency, cross-runtime test runner. | uvu is a fast, lightweight test runner for Node.js and the browser. |
Plans
In their own words
Pure Test
Pure Test is a free, minimal test runner for projects using JavaScript runtimes and browsers. It supports Node.js, Deno, Bun, Cloudflare Workers, and browsers, and its API includes test suites, assertions, lifecycle hooks, spies, fake timers, and retry and timeout options. The CLI provides multiple reporters, test filters, file watching, sharding, and fail-fast execution. For CI, `--shard` splits test files across jobs and exits cleanly when a shard has no files. TypeScript test discovery requires `--ts` on Node.js; it is automatic on Deno and Bun. A Deno adapter registers tests as `Deno.test()` calls for use with `deno test` and its filtering and IDE workflows. The README includes migration guides for Jest and Vitest and notes compatibility with common mock methods. Pure Test does not isolate tests, so lifecycle hooks are recommended for managing state. The project is beta, and its APIs may change. It is Apache-2.0 licensed, with no paid plans stated.
uvu
uvu is a free, lightweight test runner for Node.js and browser projects. It supports individually executable test files, asynchronous tests that may return Promises, native ES modules and a familiar API. Tests can be grouped into named suites or registered through a simpler test interface, and snapshot testing is supported. Each file is self-contained and can also be run directly with Node.js. The optional CLI collects and executes suites, with options to stop after the first failure, ignore patterns, preload modules, set a working directory and colorize output. When a directory is specified, file matching takes a regular-expression pattern rather than relying on glob patterns. The optional assertion module works in browsers and can be swapped for another library, including Node.js’s native assert. Installation uses `npm install --save-dev uvu`. Package metadata specifies Node.js version `>=8`; the repository identifies the project as MIT licensed and credits Luke Edwards.