【发布时间】:2015-08-04 11:51:50
【问题描述】:
我无法访问以下网址“http://localhost:7000/login/next=” 在我的页面对象中,我设置了以下内容:
class LoginPage < SitePrism::Page
set_url "/login/next="
我在 env.rb 文件中设置了以下内容
Capybara.app_host = "http://localhost:7000"
Capybara.server_host = "localhost"
Capybara.server_port = "7000"
并且需要以下内容:
require 'uri'
require 'net/http'
require 'open-uri'
当我运行测试时,它会得到以下结果
Cannot assemble URI string with ambiguous path: ':7000/login/next='(Addressable::URI::InvalidURIError)
Capybara 不喜欢 url 中的端口/主机。有什么想法可以让谁来做这个吗?
【问题讨论】:
-
set_url方法中的代码是什么? -
我建议在
config/test.rb中设置端口和主机。在 Capybara 中设置它会覆盖默认的测试环境。你能发布你的 Cucumber 测试吗? -
是的,我已将其设置在 feature/support/env.rb Capybara.app_host = "localhost:7000" Capybara.server_host = "localhost" Capybara.server_port = "7000"
标签: ruby-on-rails ruby cucumber capybara