通过在我的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/