2012-10-23 14 views
1

我正在使用watin進行一些網絡測試,現在想出了一個奇怪的問題:有一個註冊頁面,點擊註冊按鈕時,如果安全號碼不正確,js彈出消息將會顯示,如果數字是正確的,js彈出窗口不會顯示。我與IE9測試它,我使用的代碼是這樣的:如何使用IE9捕獲watin中的alertDialogHandler?

var alertDialogHandler = new AlertDialogHandler(); 
using (new UseDialogOnce(ie.DialogWatcher, alertDialogHandler)) 
{ 
    ie.Button(Find.ByName("registe_r")).Click(); 
    MessageBox.Show(alertDialogHandler.Message); 
    if (alertDialogHandler.Exists()) 
    { 
    alertDialogHandler.OKButton.Click(); 

    } 
} 

奇怪的alertDialogHandler不能被捕獲,並且代碼

MessageBox.Show(alertDialogHandler.Message); 

會返回一個錯誤:「操作不可用,對話框不存在。「

我嘗試了幾種方法來弄清楚如何解決這個問題,但是失敗了,是否有可能導致IE9?我記得兩年前,當我使用IE7時,這個工作非常好。

感謝您的幫助!

回答

0

的代碼這部分工作對我來說在IE9試試吧:

  AlertDialogHandler alertDialogHandler = new AlertDialogHandler(); 
      ie.AddDialogHandler(alertDialogHandler); 
      ie.Button(Find.ByName("registe_r")).Click();  
      alertDialogHandler.WaitUntilExists(); 
      alertDialogHandler.OKButton.Click(); 
      ie.RemoveDialogHandler(alertDialogHandler);