【发布时间】:2019-11-05 02:11:54
【问题描述】:
运行NPM test 会导致失败。
看起来 es6 导入无法正常工作:
import adder from '../adder'
有关该问题的更多信息可以找到here。
我尝试根据 jest 建议将以下 sn-p 添加到 .babelrc 文件并安装 transform-es2015-modules-commonjs。
"env": {
"test": {
"plugins": ["transform-es2015-modules-commonjs"]
}
}
这是最后的文件:adder.test.js。
javascript
import adder from '../adder'
describe('Adder', () => {
test('adds two numbers', () => {
expect(adder(5, 3)).toEqual(8)
})
})
这是npm test的结果:
$ npm test
> express-webpack@1.0.0 test C:\Users\Daniel\Workspaces\Web\express-webpack
开玩笑
FAIL src/js/test/adder.test.js
Adder
× adds two numbers (1ms)
● Adder › adds two numbers
TypeError: (0 , _adder.default) is not a function
3 | describe('Adder', () => {
4 | test('adds two numbers', () => {
> 5 | expect(adder(5, 3)).toEqual(8)
| ^
6 | })
7 | })
at Object.<anonymous> (src/js/test/adder.test.js:5:12)
Test Suites: 1 failed, 1 total
Tests: 1 failed, 1 total
Snapshots: 0 total
Time: 2.304s, estimated 4s
Ran all test suites.
npm ERR! Test failed. See above for more details.
【问题讨论】:
-
欢迎 Daniel,请出示您的 adder 文件,因为您似乎没有正确使用 adder.js 中的默认导出。
-
今天令人惊讶的是,我注意到 adder.js 文件中没有代码。在我添加代码后,现在开玩笑测试通过了。
-
是的,我查看了您的 GitHub 存储库,发现 addr.js 文件为空。祝你好运!
标签: ecmascript-6 jestjs