Подтвердить что ты не робот

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

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

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

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

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

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

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

4b9b3361

Ответ 1

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

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

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

Ответ 2

Это помогает мне:

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

Ответ 3

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

Как импортировать модуль 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

Проверьте это!