ESM Unit vs Web Test Runner
ESM Unit
github.comWeb Test Runner
modern-web.devSide by side
| Figure | ESM Unit | Web Test Runner |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 0 | 1 |
| Spec score · JavaScript Testing Frameworks | 7.3 (#15) | 8.2 (#4) |
| Debugging | A failed test can be rerun on its own by clicking “Isolate” in the browser window. | Debug mode opens a real browser window with developer tools. |
| Integrations | The README recommends Sinon for stubbing, mocking, and assertions against mocks. | The docs describe using the Playwright launcher with GitHub Actions via Microsoft's Playwright Action. |
| License | The repository license identifies the software as Apache License 2.0 and states that it is provided without warranties or conditions. | The project's GitHub page identifies the repository license as MIT. |
| Maker | Intuit’s GitHub organization lists Mountain View, CA as its location. | Modern Web describes its goal as providing developers with guides and tools for modern web development while working closely with the browser. |
| Purpose | ESM Unit is a unit testing tool for native ECMAScript modules in web browsers. | Web Test Runner is a test runner for web applications. |
| Support | The project README invites users to open an issue or pull request and says it welcomes contributions. | The project links to Discord for community discussion and lists sponsorship and contributions as ways to support it. |
Plans
In their own words
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.