Comment définir la taille de la fenêtre du navigateur dans Rspec (Selenium)

je travaille sur le test D'intégration Ruby On Rails en utilisant capybara, sélénium .

comment configurer la hauteur et la largeur de la fenêtre de test du navigateur?

j'ai cherché, mais rien ne fonctionne bien pour moi.

j'ai essayé de suivre le code.

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

Peut-on. s'il vous plaît.

16
demandé sur Justin Ko 2012-12-10 17:55:40

3 réponses

vous pouvez utiliser la méthode resize_to(width, height) qui fait partie du webdriver de sélénium.

par exemple, ce qui suit ferait du navigateur 100px large et 200px haut:

page.driver.browser.manage.window.resize_to(100,200)
27
répondu Justin Ko 2012-12-10 17:28:49

Il aide pour me dire:

Capybara.register_driver :chrome do |app|
  Capybara::Selenium::Driver.new(app, 
    browser: :chrome,
    desired_capabilities: {
      "chromeOptions" => {
        "args" => %w{ window-size=1024,768 }
      }
    }
  )
end
5
répondu shilovk 2015-08-26 12:29:18

Bâtiment sur Justin Ko est utile de répondre:

Que Diriez-vous d'importer un module responsive_helper dans votre fichier spec? Par exemple,

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

Check it out!

0
répondu mycargus 2015-10-18 04:54:29