DEV.co
Open-Source Testing · jasmine

jasmine

Jasmine is a mature, MIT-licensed JavaScript testing framework that runs in browsers and Node.js without external dependencies. It supports modern Node versions (20, 22, 24) and evergreen browsers, making it suitable for both frontend and backend JavaScript projects.

Source: GitHub — github.com/jasmine/jasmine
15.8k
GitHub stars
2.2k
Forks
JavaScript
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryjasmine/jasmine
Ownerjasmine
Primary languageJavaScript
LicenseMIT — OSI-approved
Stars15.8k
Forks2.2k
Open issues7
Latest releasev6.3.0 (2026-06-06)
Last updated2026-07-04
Sourcehttps://github.com/jasmine/jasmine

What jasmine is

BDD-style testing framework written in JavaScript, framework-agnostic, with no DOM or browser dependency. Supports Node 20/22/24 and major browsers (Chrome, Firefox, Edge, Safari). Latest release v6.3.0 (June 2026), last commit July 2026.

Quickstart

Get the jasmine source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/jasmine/jasmine.gitcd jasmine# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

Node.js backend testing

Directly supported on Node 20, 22, 24. Ideal for unit and integration tests in server-side JavaScript projects without browser overhead.

Framework-agnostic frontend testing

Works across evergreen browsers and Safari without requiring a specific framework. Suitable for vanilla JavaScript, React, Vue, Angular, or framework-free projects.

CI/CD integration for JavaScript projects

Lightweight, no external dependencies, and well-established in automated testing pipelines for both monorepos and standalone JavaScript applications.

Implementation considerations

  • Installation varies by environment (browser, Node, build tool). Refer to Getting Started guide for your specific setup.
  • Supports Node 20+ on best-effort basis; Node 22 and 24 are primary supported versions. Browser support tested against current evergreen versions at release time.
  • BDD syntax (describe/it/expect) requires learning Jasmine matchers and async patterns (done callbacks, promises, async/await).
  • Upgrade from v4.x has breaking changes; consult upgrade guide before migrating major versions.
  • No built-in support for advanced features like test parallelization or watch mode plugins—may require additional tooling.

When to avoid it — and what to weigh

  • Snapshot testing as primary strategy — Jasmine supports snapshot testing but is not optimized for it compared to alternatives like Jest. Consider other frameworks if snapshot-heavy workflows are central.
  • End-to-end or browser automation testing — Jasmine is a unit/spec testing framework, not a browser automation or E2E tool. Projects requiring Selenium, Cypress, or Playwright should pair Jasmine with those tools or use them standalone.
  • Proprietary or closed-source licensing required — MIT license requires attribution and permits commercial use, but some enterprises prefer dual licensing or proprietary alternatives for legal certainty. Requires legal review if proprietary-only use is mandated.
  • Testing TypeScript with first-class type integration — While TypeScript is usable with Jasmine, frameworks like Jest or Vitest offer tighter TypeScript tooling and type-aware test patterns out of the box.

License & commercial use

MIT License. Permissive, OSI-approved. Allows commercial use, modification, and distribution with attribution required and no liability.

MIT license explicitly permits commercial use. No proprietary restrictions or paid licensing tiers. Attribution required in derivative works. Verify with legal counsel if enterprise dual-licensing agreements are required.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationStrong
License clarityClear
Deployment complexityLow
DEV.co fitStrong
Assessment confidenceHigh
Security considerations

No security vulnerabilities mentioned in provided data. As a test framework, it runs in the development/CI environment, not in production. Standard Node.js supply-chain practices apply (npm dependency audits). Regularly maintained and updated to support current Node/browser versions. Review security advisories at GitHub if using in air-gapped or restricted environments.

Alternatives to consider

Jest

Built-in snapshot testing, watch mode, coverage, and TypeScript support. Higher adoption in modern React/Node projects but heavier footprint and slower startup.

Mocha + Chai

Lighter-weight, modular testing stack with larger ecosystem of assertion libraries. Requires more manual configuration; less batteries-included than Jasmine.

Vitest

Modern Vite-native testing framework with faster startup, TypeScript-first, and Jest-compatible API. Better for component testing in Vite projects but less mature than Jasmine.

Software development agency

Build on jasmine with DEV.co software developers

Jasmine is a proven choice for unit and spec testing in Node.js and browser environments. Review the documentation, check Node version support, and run a pilot test suite in your CI/CD environment to confirm fit. Contact us to discuss integration into your development workflow.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

jasmine FAQ

Can I use Jasmine for production monitoring or runtime testing?
No. Jasmine is a development-time testing framework. It is not designed for production runtime assertions or health checks.
Does Jasmine support async/await and promises?
Yes. v6.3.0 supports async/await, promises, and done callbacks for asynchronous test specifications.
Is Jasmine maintained and secure for new projects?
Yes. Active development as of July 2026, low issue count, and regular releases. MIT license is permissive and well-understood. Suitable for new projects; review Node version compatibility for your target environment.
What is the learning curve for developers new to Jasmine?
Moderate. BDD syntax (describe/it) is intuitive, but mastering matchers, spies, and async patterns requires study. Official tutorials and documentation are comprehensive.

Software developers & web developers for hire

DEV.co is a software development agency delivering custom software development services to companies building on open source. Our software developers and web developers design, integrate, and ship production systems — spanning web development, APIs, AI, data, and cloud. If jasmine is part of your open-source testing roadmap, our team can implement, customize, migrate, and maintain it.

Evaluate Jasmine for Your JavaScript Testing Needs

Jasmine is a proven choice for unit and spec testing in Node.js and browser environments. Review the documentation, check Node version support, and run a pilot test suite in your CI/CD environment to confirm fit. Contact us to discuss integration into your development workflow.