FREEDOM251

Freedom251 › JavaScript Testing Frameworks

Jasmine

Free plan LinuxMacWebWindows

Visit Jasmine Alternatives Pricing

Jasmine's own site

What Jasmine is

Jasmine is a free, open-source framework for testing JavaScript code that runs in browsers and Node.js. Specs use JavaScript with a describe/it structure and expect matchers. The jasmine-core package has no external dependencies, and Jasmine does not rely on other JavaScript frameworks. For Node, users can install the package locally with npm and invoke it with npx jasmine; the standalone distribution runs specs in a browser without other tools or a web server. Jasmine supports ES modules and can also load CommonJS modules in its Node setup. Its browser runner supports interactive use or CI with headless Chrome or Sauce Labs, and can connect to a user's Selenium Grid. Runners are configurable, and users can add custom reporters and matchers or randomize spec order. The project supports JavaScript and TypeScript, lists parallel execution and built-in mocks, and is licensed under MIT. Browser and Node support follows a rolling window, and older platforms may receive best-effort support or be dropped in minor releases. The unmaintained karma-jasmine adapter depends on jasmine-core 4.x, which may prevent newer features from working through it.

Who it suits

Jasmine suits developers testing JavaScript in Node.js or browsers, including teams running browser specs interactively or in CI. It offers both a standalone browser option and a local Node package.

What it does well

  • No external dependencies in jasmine-core.
  • Standalone browser distribution needs no web server.
  • Supports ES modules and CommonJS in Node.
  • Custom reporters, matchers and randomized spec order.

What to know first

  • Older platforms may lose support in minor releases.
  • Unmaintained karma-jasmine adapter depends on jasmine-core 4.x.

Plans

PlanBilled and limitsPrice
JasmineNo pricing or usage limits statedFree

As jasmine.github.io lists them, read 9 Oct 2026. The maker's own page has the final word.

Getting started

  1. Visit the Jasmine website.
  2. For Node.js, install the package locally with npm.
  3. Run Node specs with npx jasmine.
  4. For browser specs, use jasmine-browser-runner or the standalone distribution.
  5. For remote browser runs, configure Sauce Labs or your own Selenium Grid.

Overview

Jasmine is a JavaScript testing framework for browser and Node.js code. It is best suited to developers who want a self-contained framework with configurable browser and Node test workflows.

Key features

Specs are written in JavaScript using describe and it blocks with expect matchers. The jasmine-core package has no external dependencies, and Jasmine does not rely on other JavaScript frameworks, so it can add a testing layer without requiring a broader framework choice.

For browser testing, jasmine-browser-runner supports interactive runs and CI through headless Chrome or Sauce Labs, and can connect to a user's own Selenium Grid for remote browsers. The standalone distribution runs specs directly in a browser without other tools or a web server, a practical option for small or self-contained checks.

Node projects can install Jasmine locally with npm and invoke it using npx jasmine. Node setup supports ES modules and CommonJS. Configurable runners, custom reporters and matchers, randomized spec order, parallel execution and built-in mocks give teams meaningful control over how tests run. Jasmine supports JavaScript and TypeScript, but not parameterized cases.

Pricing

Jasmine is free and open source under the MIT License. Its plan costs nothing, with no usage limits stated; there is no free trial because the software is already free. There are no paid tiers or seat quotas to weigh, making it suitable for individual developers and teams that want to adopt it without a software license charge.

Platforms

Jasmine supports Linux, macOS, Windows and the web, with browser and Node.js execution paths. Platform support follows a rolling window: older platforms may receive best-effort support or be dropped in minor releases. Teams tied to legacy environments should check compatibility before standardizing on it.

Who it's for

Jasmine is a strong fit for JavaScript and TypeScript developers who want browser and Node testing in one framework, particularly when independence from other JavaScript frameworks and customizable runners matter. Its no-server standalone browser option also suits lightweight checks. It is less suitable for teams that need parameterized test cases or depend on long-term support for older platforms.

Pros and cons

  • Pro: The core package has no external dependencies and does not depend on other JavaScript frameworks, keeping the framework choice focused.
  • Pro: Browser, Node, standalone and remote-grid options cover varied local and CI workflows.
  • Pro: Custom runners, reporters, matchers and randomized order let teams shape execution and reporting.
  • Con: Parameterized cases are not supported, which limits teams that want to express test variations in that form.
  • Con: Rolling platform support can leave older environments on best-effort support or without support after a minor release.
  • Con: The unmaintained karma-jasmine adapter depends on jasmine-core 4.x, so newer Jasmine features may not work through it.

Alternatives

JavaScript Testing Frameworks and Unit Testing Frameworks are useful starting points for comparing tools across those categories.

Choose Karma only if its existing setup is important: it is deprecated and receives no new features or general bug fixes, while Jasmine's karma-jasmine adapter is also unmaintained and limited to jasmine-core 4.x.

QUnit is another free, open-source JavaScript testing framework, distributed through CDN, npm and Yarn. Web Test Runner is an alternative for teams looking for browser-focused web development tools and guides.

Cucumber.js is available as an npm development dependency. Pure Test is a free, open-source option under Apache-2.0. Vitest is free and open source, with no plan limits stated.

Testem is a free, MIT-licensed JavaScript test runner. Mocha is a free, open-source JavaScript test framework installed as a development dependency.

Verdict

Choose Jasmine if you want a free, framework-independent way to test JavaScript across browser and Node.js workflows, with runners and reporting you can customize. Look elsewhere if parameterized cases are essential, your platforms need stable long-term support, or your workflow depends on newer features through karma-jasmine.

Verdict

Jasmine provides browser and Node.js testing options, with configurable runners and customization tools. Check its rolling platform support and the karma-jasmine adapter limitation if either affects your setup.

Questions

How much does Jasmine cost?

Jasmine is free and open source, with a listed plan price of $0.

Which platforms does Jasmine support?

It supports Linux, macOS, Windows, and the web. Browser and Node support follows a rolling window.

Can Jasmine run tests in CI?

Yes. jasmine-browser-runner can run specs in CI using headless Chrome or Sauce Labs.

Does Jasmine work with TypeScript?

Yes. Jasmine lists JavaScript and TypeScript as supported languages.

Is Jasmine open source?

Yes. The project repository states that Jasmine is licensed under the MIT License.

Can Jasmine use a remote browser grid?

Yes. The browser runner can use Sauce Labs or a user's own Selenium Grid.

Facts from Jasmine's own pages

Browser runner
The jasmine-browser-runner package can run specs interactively in browsers or in CI using headless Chrome or Sauce Labs. · jasmine.github.io, 9 Oct 2026
Compatibility limit
The FAQ says the unmaintained karma-jasmine adapter depends on jasmine-core 4.x, so newer Jasmine features may not work through it. · jasmine.github.io, 9 Oct 2026
Customization
Jasmine supports configurable runners, custom reporters, custom matchers, and randomized spec order. · jasmine.github.io, 9 Oct 2026
Dependencies
The jasmine-core package has no external dependencies, and Jasmine does not depend on other JavaScript frameworks. · jasmine.github.io, 9 Oct 2026
Integrations
The browser runner can use Sauce Labs or a user's own Selenium Grid as a remote browser grid. · jasmine.github.io, 9 Oct 2026
License
The Jasmine project repository states that the software is licensed under the MIT License. · github.com, 9 Oct 2026
Module support
Jasmine supports ES modules, and its Node setup can also load CommonJS modules. · jasmine.github.io, 9 Oct 2026
Node installation
The Node package can be installed locally with npm and invoked using npx jasmine. · jasmine.github.io, 9 Oct 2026
Purpose
Jasmine is a framework for testing JavaScript code that runs in browsers and Node.js. · jasmine.github.io, 9 Oct 2026
Standalone option
The standalone distribution runs specs in a web browser without other tools, and it does not require a web server. · jasmine.github.io, 9 Oct 2026
Support
The project directs users to its GitHub repository to report issues and contribute. · github.com, 9 Oct 2026
Testing style
Jasmine specs use JavaScript with a describe/it structure and expect matchers. · jasmine.github.io, 9 Oct 2026
Version support
Browser and Node support follows a rolling window; older platforms may be supported on a best-effort basis or dropped in minor releases. · jasmine.github.io, 9 Oct 2026

Where Jasmine stands on Freedom251

Look at these too