2014-02-25 53 views
0

我是Selenium的新手,並試圖處理不同瀏覽器(如IE和Firefox)上的彈出窗口。爲什麼Firefox Selenium驅動程序沒有「UnhandledAlertException」

在IE的情況下,如果我們沒有設置能力 - 「unexpectedAlertBehaviour」爲「忽略」,驅動程序將拋出一個「UnhandledAlertException」並默認接受彈出窗口。儘管我們可以在Capabilities中更改此行爲。

cap = Selenium::WebDriver::Remote::Capabilities.ie(:ignoreProtectedModeSettings=>true,:ignoreZoomSetting=>true,:unexpectedAlertBehaviour=>"ignore") 

但在FF的情況下,能力 - 「unexpectedAlertBehaviour」不可用,有關處理彈出窗口的唯一功能是handlesAlerts - 這也是一個只讀能力。

cap = Selenium::WebDriver::Remote::Capabilities.firefox(:unexpectedAlertBehaviour=>"ignore") 

FF驅動程序不會拋出UnhandledAlertException並自行處理警報。

**

如何在Firefox中處理突發警報?

**

+0

你已經創建了一個'ie'對象。不是'Firefox'。 –

+0

是的,這是一個IE的例子,我需要類似於FF的... – Prasant

+0

如果你想使用Firefox,創建一個Firefox實例,而不是一個,即一個 –

回答

0

你試過:

DesiredCapabilities capability = DesiredCapabilities.firefox(); 
capability.setCapability(CapabilityType.UNEXPECTED_ALERT_BEHAVIOUR, 
         UnexpectedAlertBehaviour.IGNORE); 
Firefox driver = new FirefoxDriver(capability); 
相關問題