简体   繁体   中英

Jest TypeError: Path must be a string. Received undefined

Below settings for my package.json

If I run from command line npm test all jest test cases are executed properly. In case I use directly the command jest from command line I receive this error:

Test suite failed to run

TypeError: Path must be a string. Received undefined at assertPath (path.js:7:11) at Object.relative (path.js:538:5)

This happens on any test files.

Any idea what could be wrong and how to fix it?

 "scripts": {
        "test": "standard && jest",
        "format": "standard --fix",
        "start": "webpack-dev-server --config webpack.config.dev.js",
        "build": "webpack --config webpack.config.prod.js"
    },

I solved this issue using:

  • npm uninstall -g jest
  • npm install -g jest
  • npm cache clean
  • npm install

I am not entirely sure what the problem here is, but I was facing the same issue and what worked for me was updating the Jest version. I was using 20 but I switched to 21 and now it magically works again.

Update version in package.json and then run rm -rf node_modules && npm install

In my case i had to update jest to version 21.x (from 20.x).

Try running npm install jest@latest --save-dev .

For me, it was the jest-cli package bumping to 21.x. So npm update jest-cli --save-dev

For me I had to downgrade. Version 21.x worked for me.

I solved this issue using:

remove node_modules remove package-lock.json

remove dev dependence from package.json of jest npm remove jest --save-dev.

npm cache clean

then run command npm install

then install npm install jest@latest --save-dev

this works for me

npm install react-dev-utils@10.1.0

Installing this version of react-dev-utils helped, when sometimes the commands in the accepted answers didn't.

Good luck y'all!

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM