Socket
Socket
Sign inDemoInstall

babel-jest

Package Overview
Dependencies
Maintainers
1
Versions
280
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

babel-jest

[Babel](https://github.com/babel/babel) [jest](https://github.com/facebook/jest) plugin


Version published
Weekly downloads
23M
decreased by-5.42%
Maintainers
1
Weekly downloads
 
Created

Package description

What is babel-jest?

The babel-jest package is a Jest plugin that makes it easy to use Babel to transform your JavaScript tests. It automatically hooks Babel into Jest and compiles files before running them, allowing you to use the latest JavaScript features and syntax in your test files.

What are babel-jest's main functionalities?

Transforming test files with Babel

This configuration in Jest's setup file tells Jest to use babel-jest for transforming any files that match the regex pattern (in this case, any JavaScript files) before running the tests.

module.exports = {
  transform: {
    '^.+\\.js$': 'babel-jest'
  }
};

Using modern JavaScript syntax in tests

With babel-jest, you can write tests using modern JavaScript features like async/await without worrying about compatibility issues.

test('async/await works', async () => {
  const data = await fetchData();
  expect(data).toBe('expected data');
});

Custom Babel configuration

babel-jest allows you to specify a custom Babel configuration to tailor the transformation process to your project's needs.

{
  'presets': [['@babel/preset-env', { 'targets': { 'node': 'current' } }]],
  'plugins': ['@babel/plugin-proposal-class-properties']
}

Other packages similar to babel-jest

Changelog

Source

25.2.0

Features

  • [jest-config] Support ESM config files with .js extension (#9573).
  • [jest-runtime] Override module.createRequire to return a Jest-compatible require function (#9469)
  • [jest-haste-map] [BREAKING] Remove mapper option (#9581)
  • [*] Support array of paths for moduleNameMapper aliases (#9465)
  • [jest-reporters] Adds ability to pass options to the istanbul-reporter through coverageReporters (#9572)
  • [jest-runtime] Require stack when a module cannot be resolved (#9681)
  • [jest-transform] writeCacheFile no longer calls fsync (#9695)

Fixes

  • [expect] Handle readonly properties correctly (#9575)
  • [jest-cli] Set coverageProvider correctly when provided in config (#9562)
  • [jest-cli] Allow specifying .cjs and .mjs config files by --config CLI option (#9578)
  • [jest-cli] Update yargs to fix CLI flag overriding (#9519)
  • [jest-config] Treat setupFilesAfterEnv like setupFiles when normalizing configs against presets (#9495)
  • [jest-config] Support .mjs config files on Windows as well (#9558)
  • [jest-config] Verify rootDir and all roots are directories (#9569)
  • [jest-config] Ensure pattern of replacePosixSep is a string (#9546)
  • [jest-haste-map] Fix crash on unix based systems without find (#9579)
  • [jest-jasmine2] Fix --testNamePattern matching with concurrent tests (#9090)
  • [jest-matcher-utils] Fix diff highlight of symbol-keyed object. (#9499)
  • [@jest/reporters] Notifications should be fire&forget rather than having a timeout (#9567)
  • [jest-resolve] Fix module identity preservation with symlinks and browser field resolution (#9511)
  • [jest-resolve] Do not confuse directories with files (#8912)
  • [jest-resolve] moduleNameMapper should take precedence over Node core modules (#9563)
  • [jest-runtime] Reset isolateModules if it fails (#9541)
  • [jest-runtime] Yarn PnP errors displayed to the user (#9681)
  • [jest-snapshot] Downgrade semver to v6 to support node 8 (#9451)
  • [jest-snapshot] Properly indent new snapshots in the presences of existing ones (#9523)
  • [jest-transform] Correct sourcemap behavior for transformed and instrumented code (#9460)
  • [jest-transform] Allow instrumentation of transformed files with weird file extensions (#9589)
  • [@jest/types] Make ConfigGlobals an interface to allow for declaration merging. (#9570)
  • [pretty-format] Export OldPlugin type (#9491)

Chore & Maintenance

  • [docs] Warn about unexpected behavior / bug of node-notifier when using the notify options.
  • [docs] Grammatical corrections to Async docs page. (#9679)
  • [jest-resolver] Use resolve package to implement custom module resolution (#9520)
  • [jest-runtime] Move execution of setupFiles to jest-runner (#9596)
  • [jest-runtime] Update anchor link in helpers (#9616)
  • [@jest/reporters] Remove unused dependencies and type exports (#9462)
  • [website] Update pictures of reports when matchers fail (#9214)

Performance

  • [jest-haste-map] Reduce number of lstat calls in node crawler (#9514)

Readme

Source

babel-jest

Babel jest plugin

Usage

Make the following changes to package.json:

{
  "devDependencies": {
    "babel-jest": "*",
    "jest-cli": "*"
  },
  "scripts": {
    "test": "jest"
  },
  "jest": {
    "scriptPreprocessor": "<rootDir>/node_modules/babel-jest",
    "testFileExtensions": ["es6", "js"],
    "moduleFileExtensions": ["js", "json", "es6"]
  }
}

And run:

$ npm install

And you're good to go!

Using experimental stages

By default, babel-jest will use Babel's default stage (stage 2). If you'd like to use one of the other stages, set the environment variable:

BABEL_JEST_STAGE

And then you can modify the test command in package.json like so:

{

  // Normal package.json stuff

  "scripts": {
    "test": "BABEL_JEST_STAGE=0 jest"
  },

  // Normal package.json stuff
}

FAQs

Package last updated on 05 May 2015

Did you know?

Socket

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.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc