2011-05-23 37 views
2

我們目前正在編寫測試的站點有一些JavaScript確認和警報對話,這些對話在頁面刷新後發生,並且是用內嵌JavaScript編寫的。例如:使用WatiN處理內聯JavaScript對話

<script> 
if (confirm('Outcome has been saved. Click OK to create a followup appointment, or click Cancel to return to appointment outcome details.')) { 
    pbFup.click(); 
} 
</script> 

我們的測試腳本似乎不能夠處理這個問題,我想不通,如果我們做錯了什麼,或者如果它失敗,因爲華廷不能處理內嵌JavaScript。我們的一個測試看起來是這樣的:

var confirmDialogHandler = new ConfirmDialogHandler(); 
using (new UseDialogOnce(IEInstance.DialogWatcher, ConfirmDialogHandler)) 
{ 
    frame.Button(Find.ByName("cbnSave")).Click(); 
    // The page should reload here. 
    confirmDialogHandler.WaitUntilExists(); 
    confirmDialogHandler.OKButton.Click(); 
} 
IEInstance.WaitForComplete(); 
+0

0123'你試過用'frame.Button(Find.ByName(「cbnSave」))。ClickNoWait();' – Praveen 2011-05-24 06:18:55

+0

是的,我們嘗試過,但結果是一樣的。 – 2011-05-24 12:20:56

回答

1

我用AlertDialogHandler(),它現在適用於我。