Webdriver 尝试调整浏览器窗口大小时堆栈级别太深错误-Capybara
我需要调整浏览器窗口的大小,以使测试正常运行,否则我会收到一个错误,指出无法与元素交互,其他元素将收到单击 因此,我尝试调整浏览器窗口的大小。我的代码如下所示:Webdriver 尝试调整浏览器窗口大小时堆栈级别太深错误-Capybara,webdriver,selenium-webdriver,capybara,Webdriver,Selenium Webdriver,Capybara,我需要调整浏览器窗口的大小,以使测试正常运行,否则我会收到一个错误,指出无法与元素交互,其他元素将收到单击 因此,我尝试调整浏览器窗口的大小。我的代码如下所示: Capybara.register_driver :selenium do |app| Capybara::Selenium::Driver.new(app, :browser => :chrome) page.driver.browser.manage.window.resize_to(1800, 1800) 但是我得到了一个
Capybara.register_driver :selenium do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
page.driver.browser.manage.window.resize_to(1800, 1800)
但是我得到了一个堆栈级别太深的错误。我确信我正在正确使用window.resize_方法。我也尝试过使用这种方法:
def set_selenium_window_size(width, height)
window = Capybara.current_session.driver.browser.manage.window
window.resize_to(width, height)
end
然后在我注册驱动程序后校准方法,但我再次得到堆栈级别太深的错误
其他人看到了吗?你是怎么解决的?你能发布错误的详细信息吗?嗨,文斯。关于这个错误,没有多少细节。我通过终端运行测试,得到的结果是:stack level too deep(SystemStackError)实际上整个错误消息是:stack level too deep(SystemStackError)/Users/Gerry/.rvm/gems/ruby-2.0.0-p195/gems/cucumber-1.3.2/lib/cumber/core\u ext/instance\u exec.rb:73有趣的是,这只发生在Chrome驱动程序上。如果我省略了chrome驱动程序部分并具有以下内容:
Capybara.default\u选择器=:css
Capybara.default\u驱动程序=:seleniumCapybara.run\u服务器=false
pagedriver.browser.manage.window.resize\u至(1800、1800)
这导致Firefox浏览器已经启动,并且它的大小调整没有任何问题。