uvu vs Web Test Runner
uvu
github.comWeb Test Runner
modern-web.devSide by side
| Figure | uvu | Web Test Runner |
|---|---|---|
| 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 | 7.6 (#11) | 8.2 (#4) |
| Installation | The README gives npm install --save-dev uvu as its installation command. | The official installation instructions use npm to add @web/test-runner as a development dependency. |
| Integrations | The README demonstrates using `uvu` with Node.js and shows `esm` as a preload for legacy Node.js versions. | The docs describe using the Playwright launcher with GitHub Actions via Microsoft's Playwright Action. |
| License | The repository identifies uvu as MIT licensed. | The project's GitHub page identifies the repository license as MIT. |
| Purpose | uvu is a fast, lightweight test runner for Node.js and the browser. | Web Test Runner is a test runner for web applications. |
Plans
In their own words
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.
Web Test Runner
Web Test Runner is a test runner for web applications, installable as an npm development dependency. It runs tests in parallel and isolation, giving each test file its own browser environment. Headless testing is supported through launchers including Puppeteer, Playwright, Selenium, BrowserStack, and WebdriverIO. Playwright can use Chromium, Firefox, and WebKit; BrowserStack runs tests remotely, including against older browser versions. Debug mode opens a browser window with developer tools, and the runner reports browser logs, 404 responses, and errors. Its command line offers interactive watch mode that reruns tests when files change, plus code coverage with configurable thresholds and reports. Default coverage instrumentation uses Chromium. Other features include ES module mocking through import maps and Mocha integration, with guidance for a custom test framework. The project is MIT-licensed, powered by esbuild and Rollup plugins, and directs users to GitHub and Discord for help and discussion. It is free and open source.