首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AVA +React的测试配置-本机

AVA +React的测试配置-本机
EN

Stack Overflow用户
提问于 2016-03-14 17:43:39
回答 1查看 1K关注 0票数 5

我尝试使用AVA巴贝尔-预置-反应-自然测试我的反应本机应用程序。

我的配置如下所示:

代码语言:javascript
复制
"scripts": {
  "test": "ava"
},
"ava": {
  "files": [
    "src/**/__tests__/*.js"
  ],
  "failFast": true,
  "require": [
    "react-native-mock/mock.js",
    "babel-register"
  ],
  "babel": {
    "presets": [
      "react-native"
    ]
  }
},
"devDependencies": {
  "ava": "^0.13.0",
  "babel-preset-react-native": "^1.2.4",
  "babel-register": "~6.4.3",
  "react-native-mock": "0.0.6"
}

…就这样失败了:

代码语言:javascript
复制
/Users/zoon/Projets/xxxxx/node_modules/babel-register/node_modules/babel-core/lib/transformation/file/index.js:556
      throw err;
      ^

SyntaxError: /Users/zoon/Projets/xxxxx/src/reducers/env.js: Unexpected token (12:8)
  10 |     case types.RECEIVE_CHANGE_ENV:
  11 |       return {
> 12 |         ...state,
     |         ^
  13 |         current: Environments[action.env]
  14 |       };
  15 |     default:

如果我在.babelrc文件中导出这个babel配置,并在我的AVA配置中使用"babel":"inherit“,它会以另一种方式失败:

代码语言:javascript
复制
/Users/zoon/Projets/xxxxx/node_modules/lodash-es/lodash.js:10
export { default as add } from './add';
^^^^^^

SyntaxError: Unexpected token export

我不明白如何正确配置这个。我试过摩卡,也遇到过同样的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-16 19:02:52

默认情况下,babel-register会忽略node_modules。您可以在您的ignore:false中设置.babelrc以禁用该行为。您也可以(可能应该)指定一个更有限的正则表达式,以避免处理node_modules中的所有内容。

见docs:https://babeljs.io/docs/usage/require/

您的完整配置应该如下所示:

.babelrc

代码语言:javascript
复制
{
  "presets": ["react-native"],
  "ignore": false
}

package.json

代码语言:javascript
复制
{
  "ava": {
    "babel": "inherit"
  }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35994447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档