
Research
Security News
The Growing Risk of Malicious Browser Extensions
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
CLI for Jasmine, a simple JavaScript testing framework for browsers and Node
Jasmine is a behavior-driven development framework for testing JavaScript code. It does not rely on any other JavaScript frameworks and does not require a DOM. Jasmine is designed to be easy to configure and provides features to write different types of tests for JavaScript applications.
Writing Specs
This feature allows you to write test cases (specs) within a suite. A suite begins with a call to the global Jasmine function 'describe' with two parameters: the title of the suite and a function containing one or more specs.
describe('A suite', function() {\n it('contains spec with an expectation', function() {\n expect(true).toBe(true);\n });\n});
Setup and Teardown
This feature allows you to define code that will run before and after each spec in a suite. 'beforeEach' and 'afterEach' are used to set up preconditions and clean up after your specs.
describe('A suite', function() {\n beforeEach(function() {\n // Code to execute before each spec in this suite\n });\n afterEach(function() {\n // Code to execute after each spec in this suite\n });\n});
Asynchronous Support
This feature supports asynchronous tests, which are crucial for handling AJAX, timeouts, or any operations that rely on external systems. The 'done' callback is used to tell Jasmine when the asynchronous function has completed.
describe('Async spec', function() {\n it('supports async execution of test preparation and expectations', function(done) {\n setTimeout(function() {\n expect(true).toBe(true);\n done();\n }, 1000);\n });\n});
Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple. Mocha is often compared to Jasmine, as both provide similar test structuring capabilities, but Mocha requires assertion libraries like Chai to be fully functional, whereas Jasmine has assertions built in.
Jest is a JavaScript testing framework designed to ensure correctness of any JavaScript codebase. It allows you to write tests with an approachable, familiar and feature-rich API that gives you results quickly. Jest is used by Facebook to test all JavaScript code including React applications. It includes built-in test runners and assertion functions, similar to Jasmine, but also provides snapshot testing, a unique feature not available in Jasmine.
The jasmine
package is a command line interface and supporting code for running
Jasmine specs under Node.
The core of jasmine lives at https://github.com/jasmine/jasmine and is jasmine-core
in npm.
This package allows you to run Jasmine specs for your Node.js code. The output will be displayed in your terminal by default.
https://jasmine.github.io/setup/nodejs.html
Installation:
npm install --save-dev jasmine
To initialize a project for Jasmine:
npx jasmine init
To seed your project with some examples:
npx jasmine examples
To run your test suite:
npx jasmine
Jasmine is compatible with both ES modules and CommonJS modules. See the setup guide for more information.
Jasmine supports Node 18*, 20, 22, and 24.
* Environments that are past end of life are supported on a best-effort basis. They may be dropped in a future minor release of Jasmine if continued support becomes impractical.
Documentation: jasmine.github.io
Please file issues here at GitHub.
Copyright (c) 2014-2019 Pivotal Labs
Copyright (c) 2014-2025 The Jasmine developers
This software is licensed under the MIT License.
FAQs
CLI for Jasmine, a simple JavaScript testing framework for browsers and Node
The npm package jasmine receives a total of 1,290,354 weekly downloads. As such, jasmine popularity was classified as popular.
We found that jasmine demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover how browser extensions in trusted stores are used to hijack sessions, redirect traffic, and manipulate user behavior.
Research
Security News
An in-depth analysis of credential stealers, crypto drainers, cryptojackers, and clipboard hijackers abusing open source package registries to compromise Web3 development environments.
Security News
pnpm 10.12.1 introduces a global virtual store for faster installs and new options for managing dependencies with version catalogs.