【问题标题】:Jest TypeError: Path must be a string. Received undefined开玩笑类型错误:路径必须是字符串。收到未定义
【发布时间】:2018-02-23 12:44:05
【问题描述】:

我的 package.json 的以下设置

如果我从命令行npm test 运行所有笑话测试用例都会正确执行。 如果我直接从命令行使用命令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"
    },

【问题讨论】:

  • 我有同样的问题,到目前为止没有任何帮助。
  • 由于项目配置是涉及 jest(和其他 node/JS/NPM/yarn 库)的构建的常见故障点,包括所有 package.json 与包含代码一样重要。下面的答案反映了这一点;他们大多只是告诉你清理并重新安装,这只有在你的配置基本上可以正常工作的情况下才有帮助,这可能是问题所在。

标签: javascript webpack jestjs babeljs


【解决方案1】:

我不完全确定这里的问题是什么,但我遇到了同样的问题,对我有用的是更新 Jest 版本。我使用的是 20,但我切换到 21,现在它又神奇地工作了。

更新package.json中的版本,然后运行rm -rf node_modules && npm install

【讨论】:

  • 感谢分享!
  • 遇到了同样的问题。升级到 21 修复了它。甚至还有一个测试进度条:)
【解决方案2】:

我使用以下方法解决了这个问题:

  • npm 卸载 -g jest
  • npm install -g jest
  • npm 缓存清理
  • npm 安装

【讨论】:

    【解决方案3】:

    对我来说,这是升级到 21.x 的 jest-cli 包。所以npm update jest-cli --save-dev

    【讨论】:

      【解决方案4】:

      在我的情况下,我必须将 jest 更新到版本 21.x(从 20.x)。

      尝试运行npm install jest@latest --save-dev

      【讨论】:

        【解决方案5】:

        对我来说,我不得不降级。 21.x 版对我有用。

        【讨论】:

          【解决方案6】:

          我使用以下方法解决了这个问题:

          删除node_modules 删除package-lock.json

          package.json 的玩笑 npm remove jest --save-dev. 中删除开发依赖

          npm cache clean

          然后运行命令npm install

          然后安装npm install jest@latest --save-dev

          这对我有用

          【讨论】:

            【解决方案7】:

            npm install react-dev-utils@10.1.0

            安装此版本的 react-dev-utils 会有所帮助,但有时接受的答案中的命令却没有。

            祝大家好运!

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 2018-10-13
              • 2019-06-04
              • 1970-01-01
              • 2021-09-04
              • 2021-12-12
              • 1970-01-01
              • 2021-09-08
              相关资源
              最近更新 更多