2

CircleCi 上的简单测试会间歇性地超时。这只发生在 CircleCi 上,在 OSX 本地,所有测试都很好。任何人都特别成功地使用了 CircleCi?

运行测试应该很简单,但在 CircleCI 或速度论坛上没有人能够解决这个问题。

我使用了来自 sanjo:jasmine 的简单示例测试。间歇性地,速度挂起并超时。没有错误。日志中没有任何信息。奇怪的是,它确实在 CircleCi 上工作过一次,然后再也没有。

测试命令很简单:

meteor --test

我得到的输出不打印任何测试:

stream error Network error: ws://localhost:3000/websocket: connect ECONNREFUSED
[[[[[ ~/app ]]]]]                  

=> Started proxy.                             
=> Started MongoDB.                           
=> Started your app.                          

=> App running at: http://localhost:3000/

在 .meteor/local/log/jasmine-client-unit.log 这是最后一行:

Chrome 38.0.2125 (Linux): Executed 0 of 0^[[32m SUCCESS^[[39m (0 secs / 0 secs)
^[[1A^[[2KChrome 38.0.2125 (Linux): Executed 0 of 0^[[31m ERROR^[[39m (0.023 secs / 0 secs)

我确认版本是相同的 Meteor 1.03.2、Node 0.10.33、Phantomjs 2.0.0、Chrome 40。抱歉,我无法提供可重现的存储库,这是一个非常间歇性的错误,可能与环境有关。

4

2 回答 2

1

尝试meteor --test --once

一次可能是它没有完成的原因

于 2015-02-26T07:57:05.150 回答
0

编辑

事实证明,jasmine 端到端测试也推荐使用 webdriver。所以我下面的建议仍然适用于茉莉花。

/编辑

什么框架?如果是黄瓜,问题是安装的 phantomjs 版本由于某种原因没有安装正确的二进制文件。

因此,在 CI 中,您需要安装 phantom 并将路径设置为环境变量。

npm install -g phantomjs
export PHANTOM_PATH=`which phantomjs`

这将告诉 webdriver 使用正确安装的二进制文件的路径而不是错误的版本。

我们真的应该修复 Cucumber.js 以不默默地失败。

您看到的关于 websockets 的另一个错误只是 --test 在启动时没有正确连接,它不会影响任何东西。

于 2015-02-26T00:03:42.207 回答