2011-07-14 52 views
8

我知道這是一個非常愚蠢的問題。但是,我無法找到如何使用watir webdriver以全屏模式打開瀏覽器。我嘗試使用最大化(),但徒勞。這是怎樣的代碼看起來像:使用watir-webdriver以全屏模式打開瀏覽器

require "rubygems" 
require "watir-webdriver" 
ff = Watir::Browser.new(:firefox) 
ff.goto("http://google.com") 
ff.maximize() 

得到錯誤「未定義的方法最大化」

回答

3

如果您知道屏幕尺寸,你可以在瀏覽器移動到左上角,並設置其大小的屏幕尺寸:Setting browser window size in Watir-webdriver

+0

感謝回答。相信我只有在看到您在回覆中提到的帖子後才發佈此問題。事實上,這仍然存在於瀏覽器的下一個標籤:)我認爲會有一些命令like maximize(),這將使瀏覽器完全模式 – Chandiran

+0

Y執行此命令** browser.execute_script('window.resizeTo (800,600)')**在Firefox中工作,但不在Chrome中? – Chandiran

+0

也許有,你應該問問webdriver的人。在問題中添加webdriver和/或selenium標籤,或者在郵件列表中詢問。 –

4

我使用的紅寶石+的Watir-的webdriver和該代碼同時適用於Firefox和IE瀏覽器 (我沒有在其他瀏覽器中檢查)

screen_width = browser.execute_script("return screen.width;") 
screen_height = browser.execute_script("return screen.height;") 
browser.driver.manage.window.resize_to(screen_width,screen_height) 
browser.driver.manage.window.move_to(0,0) 
+0

對於鉻,這是唯一的解決方案爲我工作mac – rails4sandeep

5

眼下,它可以最大化瀏覽器做:

require "rubygems" 
require "watir-webdriver" 
browser = Watir::Browser.new(:firefox) 
browser.goto("http://google.com")  
browser.driver.manage.window.maximize 

實際上是要Selenium Driver來處理它,而且AFAIK在Firefox和Chrome中運行良好。

+0

是在兩個作品 – hoju

0

我不確定關於ruby代碼或watir,但是對於在硒中的Chromedriver,您不能僅僅通過driver.manage()。window()來調用窗口。

相反,你必須做一個整潔的小工作。您需要將選項傳遞給Chromedriver。看到這個帖子How to set Chrome preferences using Selenium Webdriver .NET binding?

var options = new ChromeOptions(); 
options.AddArgument("-start-maximized"); 
//start the chromedriver 
IWebDriver driver = new ChromeDriver(@"*Path_To_Chromedriver*", options) 

    //Perform your test 

driver.Quit(); 
+0

最新版本的ChromeDriver支持driver.manage()。窗口()。呼叫最大化 – PocketDews

+0

使用支持Chrome v31-34的ChromeDriver v2.9(2014-01-31),無法撥打電話。 – Ben

+0

嘗試將WebDriver更新爲最新版本,因爲它當然可以工作。請參閱https://code.google.com/p/chromedriver/issues/detail?id=65&can=1&q=maximize&colspec=ID%20Status%20Pri%20Owner%20Summary – PocketDews

3

什麼工作對我來說是繼hooks.rb

(如果使用的是黃瓜)

Before do 
    @browser = Watir::Browser.new :firefox #(:chrome, :ie, etc) 
    @browser.driver.manage.window.maximize 
end 
3

這爲我工作!你不得不說.window.maximize,而不是僅僅.maximize

browser = Watir::Browser.new "firefox" 
browser.goto "http://example.com" 
browser.window.maximize 
-1

這爲我工作

@browser = Watir::Browser.new 
@browser.goto("http://google.com") 
@browser.driver.manage().window().maximize 
+0

請注意,這與現有答案相同 - 例如[回答@gonzalo](http://stackoverflow.com/a/12412460/1200545) –

相關問題