在节点0.12.0上运行jest时出错

时间:2015-04-26 05:56:14

标签: reactjs jestjs

我试图在我的项目中运行Jest测试并且我有节点v0.12.0,因此运行Jest测试会给出以下错误:

  

/Users/ajaybeniwal203/ODeskWork/ui-components/node_modules/jest-cli/node_modules/harmonize/harmonize.js:31           node.stdout.pipe(process.stdout);

     

TypeError:无法读取属性' pipe'未定义的       在module.exports( /Users/ajaybeniwal203/ODeskWork/ui-components/node_modules/jest-cli/node_modules/harmonize/harmonize.js:31:20

     

at Object.<anonymous> /Users/ajaybeniwal203/ODeskWork/ui-components/node_modules/jest-cli/bin/jest.js:39:1 )   在Module._compile(module.js:460:26)

     

at Object.Module._extensions..js(module.js:478:10)

     

在Module.load(module.js:355:32)

     

在Function.Module._load(module.js:310:12)

     

在Function.Module.runMain(module.js:501:10)

     

启动时(node.js:129:16)

     

at node.js:814:3 npm ERR!测试失败。

     

有关详细信息,请参阅上文。

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

众所周知issue

  

它已知并且主要与JSDOM + contextify有关。

尝试使用节点0.10代替,nvm或类似的替代Windows可供选择。

答案 1 :(得分:1)

很酷的问题。这是由于Jest不支持Node v0.12

不幸的是,到目前为止还没有办法解决这个问题(jest v0.4.x);但是,这是解决方法:使用v0.10

尝试使用nvm切换开发环境的节点版本:

切换到以前的版本

nvm use 0.10

重建依赖项

npm rebuild

在先前版本

上运行测试

npm test

仅供参考,如果你使用Node,下一版本的Jest(v0.5)将不支持;如果你使用io.js,继续都是好事。

我从v0.1开始使用Jest,很遗憾地说我已经对它有信心了。我会转到Mocha。

HTH