Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webdriver 尝试调整浏览器窗口大小时堆栈级别太深错误-Capybara_Webdriver_Selenium Webdriver_Capybara - Fatal编程技术网

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驱动程序=:selenium
Capybara.run\u服务器=false
pagedriver.browser.manage.window.resize\u至(1800、1800)
这导致Firefox浏览器已经启动,并且它的大小调整没有任何问题。