下面的代码适用于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();
答案 0 :(得分:0)
Afaik WatiN还没有很好地处理Dialogs,尽管它已经出现了。
可以绕过它们,比如将Enter传递给浏览器或其他javascript交互。
有类似的问题