Skip to content
SPECIFICTION
Get listed

QUnitX vs uvu

QUnitX

github.com

uvu

github.com

Side by side

FigureQUnitXuvu
Price from—Free
Free plan—Yes
Free trial——
Open source——
WebYesYes
WindowsYes—
macOSYes—
LinuxYes—
Plans published01
Spec score · JavaScript Testing Frameworks7.2 (#17)7.6 (#11)
AssertionsAssertions include structural and partial equality, error matching, execution-order checks, assertion counts, and per-test timeouts.The optional `uvu/assert` module works in Node.js and browser contexts, and the documentation says existing assertion libraries can be used instead.
InstallThe README gives npm and Deno installation commands and requires Node.js 22 or later or Deno 2 or later.The README gives `npm install --save-dev uvu` as the installation command.
IntegrationsThe README documents installation through npm and Deno, and describes a JSR package published from CI with provenance.The README demonstrates using `uvu` with Node.js and shows `esm` as a preload for legacy Node.js versions.
LicenseThe repository identifies its license as MIT.The repository identifies uvu as MIT licensed.
PurposeQUnitX lets teams write one JavaScript or TypeScript test file and run it unchanged with Node.js, Deno, or in a browser.uvu is a fast, lightweight test runner for Node.js and the browser.

Plans

QUnitX

No plans published.

QUnitX pricing →

uvu

  • uvuFree

uvu pricing →

In their own words

QUnitX

QUnitX lets teams write JavaScript or TypeScript tests in one file and run them with Node.js, Deno, or in a browser. The project says it needs no configuration files, transform pipeline, injected globals, or runtime dependencies, and that TypeScript runs as-is. Its assertions cover deep and partial equality, error matching, ordered steps, assertion counts, and per-test timeouts. Tests can be organized in nested modules with before, beforeEach, afterEach, and after hooks. The browser interface filters tests, shares filtered views by URL, reruns individual tests, and displays assertion differences. The linked qunitx-cli runs tests in headless Chromium, Firefox, or WebKit and streams TAP output. It also supports esbuild plugins, GitHub-annotated output, JUnit XML, V8 coverage reports, and a JavaScript API. QUnitX is free and lists an MIT license. The core requires Node.js 22 or later or Deno 2 or later; the CLI requires Node.js 24 or later or Deno 2.7 or later. Its default standalone Chromium mode also needs system Chrome or CHROME_BIN. Browser coverage has a source-map limitation.

Visit github.com

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.

Visit github.com