2012-11-17 123 views
0

Page-1 Screenshot我使用Firefox 10和硒服務器獨立2.25.0.jar。我只使用webdriver編寫腳本。在我的應用程序中有一個OK按鈕的警報框。我嘗試了許多代碼解決方案,但不起作用。以下是我試過如何處理Firefox上的警報10

解決方法1解決方法:

((JavascriptExecutor)driver).executeScript("window.alert = function(msg){};"); 

解決方案2:

Alert alert = driver.switchTo().alert(); 
alert.accept(); 

page 2 screenshot 但它顯示了以下錯誤

Caused by: org.openqa.selenium.UnhandledAlertException: Modal dialog present 
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
java.lang.reflect.Constructor.newInstance(Unknown Source) 
+0

我使用第二個解決方案,它的工作原理。你確定那裏只有一個對話嗎? – Ioan

+0

你說得對。其實情況就是這樣。當我的頁面加載時顯示Ajax控件(進度條),並在一秒鐘後顯示警告框。一旦腳本點擊確定按鈕,它就會返回到父頁面。它顯示錯誤。請幫助我......我被封鎖了。我附上第1頁和第2頁截圖..如果你能指導我。 – tejas

回答

2

我建議你以下解決方案:

  • 如果代碼表示在第一次單擊確定後仍有另一個對話框,請嘗試再次執行一次:driver.switchTo().alert().dismiss();爲元素
  • 檢查缺省等待時間出現(它應該至少1 second
  • 如果不工作,嘗試處理一個try-catch中的代碼的這一部分,捕UnhandledAlertException異常並嘗試dismiss()在趕上代碼。
  • 這是您第一次遇到此版本的Firefox問題?我使用的是Firefox 13.0.1,因爲我在其他版本中遇到了很多問題,或許您應該重新考慮升級。

告訴我,如果事情是對你有用

+0

感謝您的回覆..我會嘗試它,並會更新你 – tejas

+0

謝謝你貸款....它現在適用於我...我更新瀏覽器版本,它開始工作..再次感謝您的幫助.. – tejas

+0

否問題。如果這有助於你解決問題,你可以接受答案。祝你好運! – Ioan

相關問題