gpt4 book ai didi

ruby-on-rails-3 - 当使用 Poltergeist 运行 Capybara 时,如何获取当前主机名和端口?

转载 作者:行者123 更新时间:2023-12-02 02:55:17 25 4
gpt4 key购买 nike

我有一个测试程序,它通过将数据 block 发送到 Rails 服务器来模仿用户的 iOS 设备。该程序在测试之外运行良好。在测试过程中,程序由于找不到服务器而立即超时。

我的配置,在 env.rb 中:

require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
Capybara.server_port = 3123
Capybara.app_host = "http://0.0.0.0:3123"

在测试中,我尝试过类似的事情

puts Capybara.current_session.current_host
puts Capybara.current_session.current_url

等等,但这些都是空白的。正在做:

放入 Capybara.current_session

产生一个内存地址,所以我知道当前 session 正在工作。

这是 capybara 在 gemfile 中的设置:

gem 'capybara', '~> 2.0.2

我已经看到了几个基于此的问题,但他们的答案对我来说不起作用。具体来说,Capybara 似乎没有按照我指定的方式设置当前主机或 url,也实际上不允许我查看当前 session 的内容。那么我该如何解决这个问题并指定特定的端口和 URL?

最佳答案

对于 capybara <2.0:

Capybara.current_session.driver.rack_server.host
Capybara.current_session.driver.rack_server.port

capybara 2.0:

Capybara.current_session.server.host
Capybara.current_session.server.port

我在这里找到了答案:Cucumber / Capybara -- how to get the host and port of the current execution

关于ruby-on-rails-3 - 当使用 Poltergeist 运行 Capybara 时,如何获取当前主机名和端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17460015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com