【问题标题】:Capybara::Poltergeist::StatusFailErrorCapybara::Poltergeist::StatusFailError
【发布时间】:2017-03-08 17:48:09
【问题描述】:

我正在尝试将puffing-billy gem 与poltergeist 一起使用,但我遇到了一些问题。我的capybara_helper.rb 包含下一个代码:

Billy.configure do |c|
  c.cache = true
  c.cache_request_headers = false
  c.path_blacklist = []
  c.persist_cache = true
  c.ignore_cache_port = true
  c.non_successful_cache_disabled = false
  c.non_successful_error_level = :warn
  c.non_whitelisted_requests_disabled = false
end

我的测试是:

scenario 'Add new address', driver: :poltergeist_billy do
  proxy.stub("https://maps.googleapis.com/maps/api/js?callback=window.initializeGmaps&key=#{MyApiKeyGoesHere}&libraries=places&language=en").
          and_return(code: 500)
  visit new_address_path

  expect(page).to have_text('Service unavailable')
end

我收到一个错误:

Failure/Error: new_address_path

     Capybara::Poltergeist::StatusFailError:
       Request to 'http://127.0.0.1:33173/addresses/new' failed to reach server, check DNS and/or server status - Timed out with the following resources still waiting https://maps.googleapis.com/maps/api/js?callback=window.initializeGmaps&key=#{MyApiKeyGoesHere}-qk&libraries=places

如果将驱动程序更改为selenium_billy,则会出现错误:

Failure/Error: example.run
  Net::ReadTimeout:
    Net::ReadTimeout

谢谢!

【问题讨论】:

    标签: capybara poltergeist


    【解决方案1】:

    它挂起的资源 url 与您在 puffing-billy 中存根的资源 url 不完全匹配 - 您可能希望使用正则表达式存根,以确保对映射的所有请求都被存根。

     proxy.stub(%r{^https://maps.googleapis.com/maps}).and_return(code: 500)
    

    【讨论】:

    • 我试过了,同样的错误,failed to reach server..
    猜你喜欢
    • 1970-01-01
    • 2016-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多