在Poltergeist/PhantomJS测试中启用HTML5缓存清单



我的应用程序使用HTML5缓存清单文件,并在客户端缓存几个js/css.html文件。我们在Poltergeist测试中遇到了问题-Selenium pass运行相同的测试。使用Poltergeit,第一个测试通过(文件尚未缓存),但第二个和其他所有测试都失败了,页面是空白的,就好像缓存不起作用一样。我试图通过将选项传递给Poltergeist来启用PhantomJS磁盘缓存,在test_helper.rb(Rails的test::Unit)中,我将Poltergest驱动程序声明为:

Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(MyRailsAppName, { phantomjs_options: ['--disk-cache=true' ] } )
end
Capybara.javascript_driver = :poltergeist

但这无济于事。有什么想法吗?

[edit]:不知道这是否相关,但当我在失败的运行中暂停测试并手动访问带有缓存内容的页面时

visit '/mobile'
=> {"status"=>"fail"}

状态为失败,但当我访问非缓存页面时,它可以工作。

好的,PhantomJS的人正在努力启用localStorage支持,它还没有合并。

最新更新