使用最终的WatiN版本时,无法使用Firefox获取Alert对话框

时间:2011-03-08 02:06:28

标签: firefox dialog watin

下面的代码适用于IE7,但是当我切换到使用Firefox运行时(从3.0到3.6)我无法获得对话框。它会在线引发错误:DiaglogHandler.WaitUntilExists(10)“对话框在10秒内无法使用”。即使对话框在那里。我正在使用最终的WatiN版本。

        string url = "https://www.xxx.com"
        Settings.AutoStartDialogWatcher = true;
        Settings.AutoCloseDialogs = false;
        //var browser = new IE();
        var browser = new FireFox();
        browser.GoTo(url);
        Image theButton = browser.Image(Find.By("id", "button"));
        AlertDialogHandler DiaglogHandler = new AlertDialogHandler();

        DialogWatcher theDialogWatcher = new DialogWatcher(new WatiN.Core.Native.Windows.Window(browser.hWnd));
        theDialogWatcher.Add(DiaglogHandler);
        theDialogWatcher.CloseUnhandledDialogs = false;

        theButton.ClickNoWait();

        DiaglogHandler.WaitUntilExists(10);
        Console.WriteLine(DiaglogHandler.Message);

        Console.WriteLine("Done");
        Console.ReadLine();

1 个答案:

答案 0 :(得分:0)

Afaik WatiN还没有很好地处理Dialogs,尽管它已经出现了。

可以绕过它们,比如将Enter传递给浏览器或其他javascript交互。

我与Authentication Required Dialogs in FireFox

有类似的问题