0

ブラウザでモーダル ダイアログを閉じようとすると問題が発生します。コードは次のようになります。

                1) driver.switchTo().window(1);
                2) driver.close();
                3) driver.switchTo().window(0);

問題は、コードの実行が行番号 2 でハングすることです。これは、「表示している Web ページはウィンドウを閉じようとしています...」というブラウザー (Web 以外) のダイアログが表示されるためだと思います。確認ダイアログを手動で閉じた後、スクリプトは先に進みます。それで、誰かがこの問題を処理する方法についてアイデアを持っているのだろうか. 私は、webdriver 2.24.1 で IE8 ブラウザーを使用しています。

4

2 に答える 2

0

AJのソリューションの場合:

driver.close();
driver.switchTo().alert().accept();

動作しません。バグを報告することをお勧めします。それが解決される前に、ダイアログを抑制する必要がある簡単な回避策を次に示します。

((JavascriptExecutor)driver).executeScript("window.onbeforeunload = function(){};");
driver.close();
于 2012-06-25T20:05:31.190 に答える
0

ご協力いただきありがとうございます!次のJSを実行して問題を回避できましたか

((JavascriptExecutor)driver).executeScript("window.open(\"\", \"_self\");window.close();");
于 2012-06-26T10:44:27.580 に答える