Jest TypeError: Путь должен быть строкой. Получено undefined

Ниже параметров для моего пакета .json

Если я запускаю из командной строки npm test, все тестовые примеры jest выполняются должным образом. В случае, если я непосредственно использую команду jest из командной строки, я получаю эту ошибку:

Не удалось запустить тестовый набор

TypeError: Path must be a string. Received undefined

  at assertPath (path.js:7:11)
  at Object.relative (path.js:538:5)

Это происходит в любых тестовых файлах.

Любая идея, что может быть неправильным и как ее исправить?

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

Ответ 1

Я решил эту проблему, используя:

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

Ответ 2

Я не совсем уверен, в чем проблема, но я столкнулся с той же проблемой, и то, что для меня работало, - это обновление версии Jest. Я использовал 20, но я переключился на 21, и теперь он волшебным образом снова работает.

Обновить версию в package.json, а затем запустите rm -rf node_modules && npm install

Ответ 3

В моем случае мне пришлось обновить jest до версии 21.x(из 20.x).

Попробуйте запустить npm install [email protected] --save-dev.

Ответ 4

Для меня это был пакет jest-cli, который натыкался на 21.x. Итак npm update jest-cli --save-dev