javascript - 尝试为 next.js 项目设置 ava 单元测试,但出现两个与设置相关的错误

标签 javascript next.js enzyme ava

在我的 package.json 文件中设置 ava 测试。 但是,当我尝试从命令行运行测试时,得到这个

following error:
    throw new TypeError(`Expected \`moduleId\` to be of type \`string\`, got \`${typeof moduleId}\``);


编辑:使用 ava 版本 1.0.0-beta.8"

package.json

   "ava": {
    "cache": false,
    "files": [
      "../test/**/*"
    ],
    "sources": [
      "../renderer/components/**/*.{js, jsx}"
    ],
    "concurrency": 5,
    "failFast": true,
    "require": [
      [
        "babel-register",
        "babel-polyfill"
      ],
      "ignore-styles",
      "./test/helpers/setup-browser-env.js"
    ],
    "babel": {
      "extensions": [
        "js",
        "jsx"
      ]
    }
  }

更新: 使用 .babelrc 文件

{
    "presets": [
        "es2015",
        "stage-2",
        "@babel/preset-react"
    ],
    "plugins": [
        "espower",
        "transform-runtime"
    ]
}

当前正在尝试让 ava 从我的 .babelrc 文件中读取

最佳答案

您尚未共享您的 AVA 版本,但看起来它确实找到了文件来测试它,只是无法编译它们。确保您使用的是最新版本,也许错误消息会更明确。

查看屏幕截图,AVA 因测试文件中的 JSX 语法而感到窒息。您可以确保 AVA 在其 Babel 管道中应用正确的配置,也可以完全禁用它,这样您就可以依赖 babel-register

读一下:https://github.com/avajs/ava/blob/master/docs/recipes/babel.md

关于javascript - 尝试为 next.js 项目设置 ava 单元测试,但出现两个与设置相关的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58140083/

相关文章:

javascript - 关于 React js enzyme 中的状态

javascript - 由于 RSTTraversal 不可用,shallow() 失败

javascript - 抓取网站。在抓取期间无法自动执行用户点击

javascript - 如何设置一个间隔,但20分钟后停止

javascript - 无法理解这个 svg 动画

java - 如何使用它的相对路径访问tomcat服务器中的文件夹?

reactjs - 使用Recoil时如何处理useEffect警告?

javascript - Next JS 在重写中使用查询参数作为变量

gitlab - Gitlab 页面上的 SSG Next JS 卡在 404?

reactjs - React 单元测试传单