3

フォームを送信するための Java testng を使用してセレンコードを作成しました。送信ボタンをクリックすると、ページはサンキューページに移動します。しかし、サンキューをロードする前に、[続行] と [キャンセル] というオプションを含む [セキュリティ警告] ダイアログ ボックスが表示されます。[Selenium コントロールで続行] をクリックする方法。続行ボタンの xpath または id を取得する方法はありません。

4

4 に答える 4

1

同じ問題がありましたが、これはfirefox 13とselenium 2.0で機能しました

spy を使用してウィンドウ情報を取得します。Firefox 13 の場合、Windows クラスは MozillaDialogClass です。 WindowName は Security Warning です。

輸入を宣言する

[DllImport("user32.dll")]
public static extern int FindWindow(string className, string windowName);

作り方

public static void SetOkButton(string className, string windowName)
    {            
        int handle = FindWindow(className, windowName);

        if (handle > 0)
        {

            if (SetForegroundWindow(handle))
            {
                SendKeys.SendWait("{ENTER}");
            }
        }
    }

メソッドを呼び出す

SetOkButton("MozillaDialogClass", "Security Warning");
于 2012-09-18T12:45:02.777 に答える
0

それがページのロード時の JS 確認ボックスである場合、(ドキュメントが言うように)、多くのことはできません。Selenium 2 ( WebDriver ) は、これらのダイアログをはるかに優れた方法で処理できます。

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

それが Firefox の確認である場合、Selenium では何もできません。

私はjava.awtを与えます。ロボットを試してみてください。

于 2012-04-28T12:18:54.783 に答える