- install jest
yarn add --dev jest
- install
yarn add -D @types/jest
andyarn add eslint @jest/globals --dev
- In file .eslintrc.cjs add jest: true,node:true
module.exports = { root: true, env: { browser: true, es2020: true, jest: true, node: true },
- install
yarn add --dev babel-jest @babel/core @babel/preset-env
- crate file babel.config.js and paste this code
module.exports = { presets: [['@babel/preset-env', {targets: {node: 'current'}}]], };
- if you get an error of this type:
You appear to be using a native ECMAScript module configuration file, which is only supported when running Babel asynchronously.
at loadCodeDefault (node_modules/@babel/core/src/config/files/module-types.ts:66:9)
at loadCodeDefault.next (<anonymous>)
at readConfigCode (node_modules/@babel/core/src/config/files/configuration.ts:75:37)
at readConfigCode.next (<anonymous>)
at Function.<anonymous> (node_modules/@babel/core/src/gensync-utils/async.ts:10:3)
at evaluateSync (node_modules/gensync/index.js:251:28)
at Function.sync (node_modules/gensync/index.js:89:14)
at sync (node_modules/@babel/core/src/gensync-utils/async.ts:83:25)
at sync (node_modules/gensync/index.js:182:19)
at onFirstPause (node_modules/gensync/index.js:210:24)
at cachedFunction (node_modules/@babel/core/src/config/caching.ts:131:34)
at cachedFunction.next (<anonymous>)
at evaluateSync (node_modules/gensync/index.js:251:28)
at node_modules/gensync/index.js:31:34
at Array.map (<anonymous>)
at Function.sync (node_modules/gensync/index.js:31:22)
at Function.all (node_modules/gensync/index.js:210:24)
at all (node_modules/@babel/core/src/config/files/configuration.ts:264:34)
at loadOneConfig.next (<anonymous>)
at buildRootChain (node_modules/@babel/core/src/config/config-chain.ts:171:39)
at buildRootChain.next (<anonymous>)
at loadPrivatePartialConfig (node_modules/@babel/core/src/config/partial.ts:110:44)
at loadPrivatePartialConfig.next (<anonymous>)
at Function.loadPrivatePartialConfig (node_modules/@babel/core/src/config/partial.ts:173:12)
at evaluateSync (node_modules/gensync/index.js:251:28)
at Function.sync (node_modules/gensync/index.js:89:14)
at sync (node_modules/@babel/core/src/config/index.ts:58:21)
at ScriptTransformer._getCacheKey (node_modules/@jest/transform/build/ScriptTransformer.js:228:41)
at ScriptTransformer._getFileCachePath (node_modules/@jest/transform/build/ScriptTransformer.js:289:27)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:522:32)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:671:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:723:19)
change name de you file babel.config.js to babel.config.cjs
--------------------------- ANOTHER THINGS -------------
A. yarn add -D whatwg-fetch
---INSTALL TESTIN LYBRARY----
A. npm install --save-dev @testing-library/react
B. yarn add -D jest-environment-jsdom
C. yarn add -D @babel/preset-react
E. in babel.config write presets: [
["@babel/preset-env", { targets: { esmodules: true } }],
["@babel/preset-react", { runtime: "automatic" }],
],
F create file jest.config.cjs and paste module.exports = {
// Other Jest configuration options...
testEnvironment: "jsdom",
};
Top comments (0)