Testem vs Web Test Runner
Testem
github.comWeb Test Runner
modern-web.devSide by side
| Figure | Testem | Web Test Runner |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · JavaScript Testing Frameworks | 7.7 (#10) | 8.2 (#4) |
| Browser testing | It can launch real browsers, including Chrome, Firefox, Safari, and Edge, and provides a Headless Chrome launcher. | It can run tests in headless browsers using Puppeteer, Playwright, Selenium, or WebdriverIO. |
| Integrations | The README describes use with GitHub Actions, Jenkins, and TeamCity. | The docs describe using the Playwright launcher with GitHub Actions via Microsoft's Playwright Action. |
| License | The repository identifies the project as MIT licensed. | The project's GitHub page identifies the repository license as MIT. |
| Purpose | Testem runs JavaScript tests in real desktop browsers, Node, Chrome, or a configured launcher. | Web Test Runner is a test runner for web applications. |
Plans
In their own words
Testem
Testem is a JavaScript test runner for running tests in Node.js, real desktop browsers, or a launcher you configure. It supports Jasmine, QUnit, Mocha, and custom framework adapters, and can be used for unit, integration, end-to-end-style, or custom test setups. Browser runs can use Chrome, Firefox, Safari, or Edge, including a Headless Chrome launcher. In development mode, a terminal interface watches project files and reruns tests after relevant changes; CI mode can run tests in available browsers in parallel. Testem includes CI reporters for TAP, dot, xunit, and TeamCity, with custom reporters available. Listed preprocessing support includes Babel, TypeScript, Browserify, ESLint, JSHint, JSLint, and CoffeeScript. Its API provides startDev, startCI, and startServer modes, and coverage reporting is supported. It works with GitHub Actions, Jenkins, and TeamCity. Testem is free and open source under the MIT license, and runs on Linux, macOS, and Windows. It requires a supported Node.js runtime: ^22.17.0, ^24.0.0, or >=26.0.0.
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.