使用“npm test”运行Jest失败,出现“在严格模式下使用const”的错误。

3

我只是想使用Jest作为单元测试框架。 我从官方的ReactJS文档中做了一个例子。

function sum(value1, value2) {
  return value1 + value2;
}
module.exports = sum;
----------------------------------------------------------------
jest.dontMock('../sum');

describe('sum', function() {
 it('adds 1 + 2 to equal 3', function() {
   var sum = require('../sum');
   expect(sum(1, 2)).toBe(3);
 });
});

但是当我运行npm tests时,出现了以下错误:
/home/app.local/node_modules/jest-cli/bin/jest.js:12
const fs = require('fs');
^^^^^
SyntaxError: Use of const in strict mode.
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:902:3
npm ERR! Test failed.  See above for more details.
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

发生了什么问题?

你使用的是哪个版本的Node? - Saad
节点版本是v0.10.25。 - AlexeiBerkov
1个回答

8
如果你阅读你发布的链接的文档,你会看到它说了以下内容:
Jest使用ES2015功能,并需要至少4.0.0版本的Node.js才能运行。
你正在使用0.10.25版本,这可能就是为什么你遇到问题的原因。将你的版本升级到 >= 4.0.0 应该可以解决这个问题。

感谢您的澄清。我漏掉了这个要求。 - AlexeiBerkov
希望你能把它解决。 - Saad
如果您使用brew安装了Node,那么只需运行$ brew upgrade node即可。 - Joe Susnick

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接