所以ava带有内置的ES2015支持,适用于我的实际测试文件.但是,当我这样做的时候
import {newUser, createUser, login} from './helpers/user';
Run Code Online (Sandbox Code Playgroud)
我无法import在帮助文件中使用和导出,然后我得到:
Users/rowe/Code/fv/foxvision-api/test/api/helpers/user.js:1
(function (exports, require, module, __filename, __dirname) { import request from 'supertest';
SyntaxError: Unexpected token import
Run Code Online (Sandbox Code Playgroud)
我没有设置特定的babel配置,因为它开箱即用的测试文件.任何人都可以向我解释为什么帮助器依赖关系不会被babel转换?使用test/**/helpers甚至遵循ava惯例.
谢谢,罗宾
解
所以基于thangngoc89的解决方案,我做的工作是:
.babelrc内容:{
"presets": [
"es2015",
"stage-2"
],
"plugins": [
"espower",
"transform-runtime"
]
}
Run Code Online (Sandbox Code Playgroud)
package.json:"ava": {
"require": ["babel-register"],
"babel": "inherit"
}
Run Code Online (Sandbox Code Playgroud)
tha*_*c89 20
AVA只会传输测试文件.不测试依赖项,因此您需要在项目中设置babel(我想你是因为你正在使用ES6而这样做).
然后在AVA的设置中,添加:
"ava": {
...
"babel": "inherit"
}
Run Code Online (Sandbox Code Playgroud)
这意味着使用您的项目babel设置来转换测试依赖项.请参阅AVA文档中的更多信息:https://github.com/sindresorhus/ava/blob/master/docs/recipes/babelrc.md
| 归档时间: |
|
| 查看次数: |
6815 次 |
| 最近记录: |