我正在使用 capybara,Selenium 开展Ruby On Rails集成测试。
如何设置测试浏览器窗口的高度和宽度?
我搜索过,但对我来说没什么用。
我尝试了以下代码。
page.execute_script('$(window).width(1200)')
任何人都可以。请。
答案 0 :(得分:27)
您可以使用属于selenium webdriver的resize_to(width, height)
方法。
例如,以下内容将使浏览器宽100px,高200px:
page.driver.browser.manage.window.resize_to(100,200)
答案 1 :(得分:5)
这对我有帮助:
Capybara.register_driver :chrome do |app|
Capybara::Selenium::Driver.new(app,
browser: :chrome,
desired_capabilities: {
"chromeOptions" => {
"args" => %w{ window-size=1024,768 }
}
}
)
end
答案 2 :(得分:0)
建立Justin Ko的有用答案:
如何将responsive_helper
模块导入您的spec文件?例如,
module ResponsiveHelpers
def resize_window_to_mobile
resize_window_by([640, 480])
end
def resize_window_to_tablet
resize_window_by([960, 640])
end
def resize_window_default
resize_window_by([1024, 768])
end
private
def resize_window_by(size)
Capybara.current_session.driver.browser.manage.window.resize_to(size[0], size[1]) if Capybara.current_session.driver.browser.respond_to? 'manage'
end
end