ESM Unit
github.com
Spec sheet
- Purpose
- ESM Unit is a unit testing tool for native ECMAScript modules in web browsers.Read 8 Oct 2026 · github.com
- Intended users
- The stated use case is developers who need to unit test native ECMAScript modules in web browsers.Read 8 Oct 2026 · github.com
- Integrations
- The README recommends Sinon for stubbing, mocking, and assertions against mocks.Read 8 Oct 2026 · github.com
- Support
- The project README invites users to open an issue or pull request and says it welcomes contributions.Read 8 Oct 2026 · github.com
- License
- The repository license identifies the software as Apache License 2.0 and states that it is provided without warranties or conditions.Read 8 Oct 2026 · github.com
- Headquarters
- Mountain View, California, United StatesRead 28 Sep 2026 · github.com
- Founded
- 1983Read 28 Sep 2026 · github.com
- Maker
- Intuit’s GitHub organization lists Mountain View, CA as its location.Read 8 Oct 2026 · github.com
- Assertions and mocks
- It includes built-in assertions, supports other assertion libraries loadable as browser ECMAScript modules, and recommends Sinon for stubs and mocks.Read 8 Oct 2026 · github.com
- Browser execution
- It runs tests in real browsers without bundling or transpilation.Read 8 Oct 2026 · github.com
- Browser support
- The README shows running tests in Chrome, Firefox, and Safari; headless mode is supported only in Chrome and Firefox.Read 8 Oct 2026 · github.com
- Coverage
- It supports per-file code coverage reports and configurable coverage thresholds.Read 8 Oct 2026 · github.com
- Debugging
- A failed test can be rerun on its own by clicking “Isolate” in the browser window.Read 8 Oct 2026 · github.com
- Distribution
- The README instructs users to install ESM Unit with npm as a development dependency.Read 8 Oct 2026 · github.com
- No build step
- It runs tests in browsers without bundling or transpilation.Read 8 Oct 2026 · github.com
- Notable limitation
- Code using JSX or imports that are not native ES modules from local relative paths must be converted before running.Read 8 Oct 2026 · github.com
- Requirements
- ESM Unit requires Node 18 LTS or later and test code that runs in current browsers as native ECMAScript modules without transpilation.Read 8 Oct 2026 · github.com
- Test isolation
- Each test file runs in an isolated iframe with its own window and DOM document.Read 8 Oct 2026 · github.com
- Watch mode
- The --watch option reruns tests when files change, and cannot be used at the same time as --debug.Read 8 Oct 2026 · github.com
Where Specifiction places it
- JavaScript Testing Frameworks#15 of 237.3