Rspec Capybara在运行首次访问方法之前获取端口

时间:2012-06-25 08:31:46

标签: ruby-on-rails selenium rspec capybara

我尝试在所有测试之前运行Capybara服务器以获取服务器端口,我应该在网址中包含“http://subdomain.domain.au:CURRENT_PORT_NUMBER/” 所以

# I create new session:
session = Capybara::Session.new(:selenium)
# then I start browser
session.driver.browser
# And try to get port number like some folks suggested
Capybara.current_session.driver.rack_server.port # => nil
# And get nil

在我看来,当浏览器启动时,你应该有一些端口号。或者我错了? 我不想要所有请求的硬编码端口号。 anyboady可以建议如何让端口访问我的应用程序。

据我所知,浏览器是另一个进程,可以在没有本地服务器的情况下启动。这只有在您通过网络查询服务器时才会生成。当'selenium'测试开始时,应该有运行机架服务器的机制。不是吗?

1 个答案:

答案 0 :(得分:0)

您可以使用Capybara.default_port来获取/设置端口。