我们从Capybara 1.1.4和Poltergeist 1.0.2升级。Phantomjs在整个版本中保持1.8.1。
js测试,渲染页面的页面 <img src="/my/image.png">
会因上述错误而失败,在此之前,他们没有失败。
该文件确实不存在。这是为测试生成的假路径,可悲的是,将其制作成真实的文件并不小(但最终应该完成)。
我们的解决方案/解决方法是配置poltergeist不要渲染图像:
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, phantomjs_options: ["--load-images=no"])
end
这样,它不会提出这些请求,也不会触发这些错误。
大概是Capybara或Poltergeist的旧版本以某种方式吞没了这种错误 - 也许不加载图像,也许是其他方式。
这不是一个优雅的解决方案,但似乎并不比以前发生的任何隐性吞咽更糟糕。