jest 是一个很棒的单元测试工具,基本上可以说是零配置。
最初按照官网的教程配置
npm install --save-dev jest
安装
//package.json script
{ "scripts":
"test": "jest"
}
//test.test.js
function sum(a, b) {
return a + b
}
test('adds 1 + 2 to equal 3', () => { expect(sum(1, 2)).toBe(3); });
运行 npm test
,测试过了。
但是当正式写测试的时候需要在 test 文件引入外部的方法,老是报错
SyntaxError: Unexpected token import
这是因为测试是在 nodejs 的环境下跑的,但是 nodejs 不支持 ES6 的语法,所以需要配置一下,最后在这个 issue 中找到了解决办法。
//根目录 .babelrc 添加以下配置即可
{"env": {
"development": {
"plugins": ["transform-es2015-modules-commonjs"]
},
"test": {
"plugins": ["transform-es2015-modules-commonjs"]
}
}
}