Как установить размер окна браузера в Rspec (Selenium)

Я работаю над интеграционным тестом Ruby On Rails, используя капибара, селен.

Как установить высоту и ширину окна браузера тестирования?

Я искал, но ничего не работает хорошо для меня.

я попробовал следующий код.

page.execute_script('$(window).width(1200)')

может любой. пожалуйста.

3 ответов


можно использовать resize_to(width, height) метод, который является частью selenium webdriver.

например, следующее сделало бы браузер 100px широким и 200px высоким:

page.driver.browser.manage.window.resize_to(100,200)

это помощь для меня:

Capybara.register_driver :chrome do |app|
  Capybara::Selenium::Driver.new(app, 
    browser: :chrome,
    desired_capabilities: {
      "chromeOptions" => {
        "args" => %w{ window-size=1024,768 }
      }
    }
  )
end

опираясь на полезный ответ Джастина ко:

Как насчет импорта responsive_helper module в ваш файл спецификации? Например,

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

зацените!