Node.js events.js:163 throw er;使用标志--runInBand执行Jest时

时间:2017-05-17 09:50:57

标签: javascript node.js macos travis-ci jestjs

在我们的package.json中,我们已添加--runInBand flag脚本测试,以便进行speed up travis测试。我们团队中有5个人,所有人都没有问题,但每次运行脚本时都会遇到此错误。这是看起来像:

events.js:163
  throw er; // Unhandled 'error' event
  ^

Error: connect EHOSTDOWN 169.254.169.254:80 - Local (192.168.8.46:63717)
    at Object.exports._errnoException (util.js:1050:11)
    at exports._exceptionWithHostPort (util.js:1073:20)
    at internalConnect (net.js:889:16)
    at lookupAndConnect (net.js:977:5)
    at Socket.realConnect (net.js:945:5)
    at Agent.connect [as createConnection] (net.js:77:22)
    at Agent.createSocket (_http_agent.js:195:26)
    at Agent.addRequest (_http_agent.js:157:10)
    at new ClientRequest (_http_client.js:212:16)
    at Object.request (http.js:26:10) 

剧本:

"test": "export APP_ENV=development && jest --no-cache --runInBand --forceExit",

如果我删除此标志,我不会收到此错误。我不知道它是否与Jest,Node,Travis等有关,但我一直在寻求解决它并且我没有更多的想法。

我的版本是:

  • 节点:v7.10.0

  • Jest:v19.0.2

  • 操作系统:macOS Sierra 10.12.4

提前致谢。

2 个答案:

答案 0 :(得分:1)

看起来您遇到了与169.254.169.254:80

的套接字连接问题

您可以查看开发环境(MacOS)以便进行套接字连接吗?

我不是Mac专家,但EHOSTDOWN意味着你可以到达主机但无法进行套接字连接。

答案 1 :(得分:0)

它似乎与节点v7.10有关。我已降级到v7.9并且工作正常。

节点团队是working on it,它将是下一个v7.x版本(可能是下周)。