我们当前正在编写测试的网站有一些JavaScript确认和警报对话,这些对话在页面刷新后发生,并使用内联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>
我们的测试脚本似乎无法处理这个问题,我无法弄清楚我们是否做错了什么,或者它是否因为WatiN无法处理内联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 :(得分:1)
我使用了AlertDialogHandler(),现在它正在为我工作。