我有一个使用Angular JS渲染视图的Rails应用程序,我正在用Rspec,Jasmine和Capybara测试这个应用程序,PhantomJS作为驱动程序通过Poltergeist。本地所有测试都在100%的时间内通过,但偶尔当有人推送应用程序并且在TravisCI上执行测试时,至少有一个javascript测试会失败并出现以下错误:
Capybara::Poltergeist::DeadClient:
PhantomJS client died while processing {
"id":"2660b299-8222-43da-a377-abd381d45ce0",
"name":"visit",
"args":["http://127.0.0.1:41235/",30]
}
令人难以置信的是,哪些测试会失败,但这会导致测试套件几乎每次都失败(再次,不一致)并阻止我们的应用程序自动部署。我用谷歌搜索了一个GitHub问题,该问题描述了类似的问题,但没有提供解决方案。
Gem版本是:
Poltergeist - 1.9.0
PhantomJS - 2.1.1.0
非常感谢任何帮助!