EVERYTHING XIAOMI
Get listed

QUnitX

QUnitX is a free, open-source test tool for JavaScript and TypeScript teams.

Place
#12 of 23
Score
6.0
QUnitX's website

What QUnitX is

QUnitX is a free, open-source test tool for JavaScript and TypeScript teams. It lets a team write a test file and run it with Node.js, Deno, or in a browser. The project describes setup without configuration files, a transform pipeline, injected globals, or runtime dependencies. Assertions include deep and partial equality, error matching, ordered steps, assertion-count checks, and per-test timeouts. Tests can be arranged in nested modules with before, beforeEach, afterEach, and after hooks. In the browser interface, users can filter tests, share a filtered view by URL, rerun a test, and inspect assertion differences. The linked qunitx-cli runs tests in headless Chromium, Firefox, or WebKit and streams TAP output to the terminal. It also supports esbuild plugins, GitHub-annotated output, JUnit XML, V8 coverage reports, and a JavaScript API. Core use 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. QUnitX is ESM-only, and browser coverage has a source-map limitation.

Good

  • Runs tests with Node.js, Deno, or browsers
  • No configuration files or runtime dependencies
  • Includes nested modules and lifecycle hooks
  • CLI supports Chromium, Firefox, and WebKit
  • MIT-licensed and free

Watch out

  • Requires Node.js 22+ or Deno 2+
  • CLI requires newer runtime versions
  • ESM only
  • Browser coverage has a source-map limitation

Who it suits

QUnitX is suited to JavaScript or TypeScript teams that want to run tests across Node.js, Deno, and browser environments. Its CLI and browser interface offer options for teams that need browser test runs or coverage reporting.

Verdict

QUnitX offers a broad test workflow across Node.js, Deno, and browsers without runtime dependencies. Check the runtime requirements and browser coverage limitation before adopting it.

The facts

Each one read from QUnitX's own pages, with the date it was checked.

What it does

Assertions
Assertions include structural and partial equality, error matching, execution-order checks, assertion counts, and per-test timeouts.checked 8 Oct 2026
Compatibility limits
QUnitX requires Node.js 22 or later or Deno 2 or later, and ships as ESM only.checked 8 Oct 2026
Coverage
The README documents coverage with c8 for Node.js and Deno and identifies browser coverage as a limitation because bundling with esbuild loses source mapping.checked 8 Oct 2026
Coverage limit
The QUnitX README says browser coverage has a source-map limitation because qunitx-cli bundles test files with esbuild.checked 4 Oct 2026
Hooks
Nested modules support before, beforeEach, afterEach, and after hooks, with outer-first setup and inner-first teardown ordering.checked 8 Oct 2026
Install
The README gives npm and Deno installation commands and requires Node.js 22 or later or Deno 2 or later.checked 4 Oct 2026
Integrations
The README documents installation through npm and Deno, and describes a JSR package published from CI with provenance.checked 8 Oct 2026
License
The repository identifies its license as MIT.checked 8 Oct 2026
No configuration
The README says QUnitX requires no config or setup files, runs TypeScript as-is, and has zero runtime dependencies.checked 8 Oct 2026
Purpose
QUnitX lets teams write one JavaScript or TypeScript test file and run it unchanged with Node.js, Deno, or in a browser.checked 8 Oct 2026
Requirements
The CLI requires Node.js 24 or later or Deno 2.7 or later; its default Chromium browser mode also requires system Chrome or CHROME_BIN when using the standalone binary.checked 4 Oct 2026
Runners
Node.js and Deno use their native test runners, while the browser path re-exports QUnit.checked 8 Oct 2026
Runtime difference
The README notes that Node runs todo test bodies while ignoring their failures, whereas Deno maps todo and skip to ignored tests whose bodies do not run.checked 8 Oct 2026
Setup
The project says it needs no configuration, setup files, transform pipeline, injected globals, or runtime dependencies.checked 4 Oct 2026

Where it runs

Browser options
The documented browser runner supports Chromium, Firefox, and WebKit, plus watch mode, fail-fast, timeout, and lifecycle hooks.checked 8 Oct 2026
Browser runner
The separate qunitx-cli bundles tests for a real browser and streams TAP to the terminal, with an optional live QUnit UI.checked 8 Oct 2026
Browser UI
The browser UI can filter by module or test, preserve filters in shareable URLs, rerun individual tests, and show assertion diffs.checked 8 Oct 2026
Platforms
The CLI README lists standalone binaries for Linux x64, macOS arm64, and Windows x64.checked 4 Oct 2026

The company

Maker
The repository identifies izelnakri as its owner and describes QUnitX as a project by its maker; it provides no headquarters or founding date in the opened pages.checked 4 Oct 2026

Alternatives to QUnitX

All alternatives
  1. 1QUnit logo

    QUnit

    Free planAndroidiOSWebAPI
    7.4Free plan
  2. 2Web Test Runner logo

    Web Test Runner

    Free planWebLinuxmacOSSelf-hosted
    6.9Free plan
  3. 3Cucumber.js logo

    Cucumber.js

    Free planLinuxmacOSSelf-hostedWindows
    6.8Free plan
  4. 4

    Karma

    Free planAndroidiOSWebLinux
    6.7Free plan
  5. 5Vitest logo

    Vitest

    Free planWebLinuxmacOSWindows
    6.6Free plan
  6. 6

    Jasmine

    Free planWebLinuxmacOSWindows
    6.5Free plan