0

ページ 1 のスクリーンショット私は firefox 10 と selenium-server-standalone-2.25.0.jar を使用しています。私は webdriver のみを使用してスクリプトを書いています。私のアプリケーションには、[OK] ボタンのある警告ボックスが 1 つあります。多くのコード ソリューションを試してみましたが、うまくいきません。以下は私が試した回避策です

解決策 1:

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

解決策 2:

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

ページ 2 のスクリーンショット しかし、それはエラーの下に表示されます

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)
4

1 に答える 1

2

次の解決策をお勧めします。

  • 最初のダイアログで [OK] をクリックした後、さらに別のダイアログが表示されるとコードが示している場合は、もう一度実行してみてくださいdriver.switchTo().alert().dismiss()
  • 要素が表示されるデフォルトの待機タイミングを確認します (少なくとも である必要があります1 second) 。
  • うまくいかない場合は、このコードのこの部分を try-catch 内で処理して、UnhandledAlertException例外をdismiss()キャッチし、catch コードで試してください。
  • このバージョンの Firefox で問題が発生するのは初めてですか? Firefox 13.0.1 を使用しているのは、他のバージョンでは多くの問題があったためです。アップグレードを再検討する必要があるかもしれません。

何か役に立ったことがあれば教えてください

于 2012-11-18T09:05:14.300 に答える