内容简介:http://stackoverflow.com/questions/882683/watin-handling-confirm-dialogs-with-confirmdialoghandler
使用Watin,我试图处理一个确认对话框,并告诉Watin按“OK”.这在互联网上有很好的记录 – 您使用ConfirmDialogHandler和UseDialogOnce方法..除了它不适用于我.我收到以下错误:
WatiN.Core.Exceptions.WatiNException:对话框在5秒钟内不可用
我正在使用watin 2.0 beta atm,但是我以前使用的是早期版本的1.X,它具有相同的问题.在运行64位Vista的同事机器上进行测试,我运行的是64位Windows 7.
代码如下所示:
using (IE ie = new IE("http://localhost/TestApp/TestConfirmPage.asp"))
{
var approveConfirmDialog = new ConfirmDialogHandler();
using (new UseDialogOnce(ie.DialogWatcher, approveConfirmDialog))
{
ie.Button(Find.ByName("btn")).ClickNoWait();
approveConfirmDialog.WaitUntilExists(5);
approveConfirmDialog.OKButton.Click();
}
ie.WaitForComplete();
}
ASP页面非常简单,它包含一个强制确认的按钮,如下所示:
<input type="button" name="btn" id="btn" value="Click me" onclick="ConfirmApp()" />
而ConfirmApp已经被剥离了测试,所以现在它包含的是:
bOK = confirm("You clicked a popup. Did you mean to?");
return bOK;
代码对我来说很好,我认为它应该有效.唯一的想法是做不同的是把等待完成里面使用对话框块.不知道为什么,但在我这样做之前,我也有一些问题,有时它有时它不工作.而在等待直到存在的时候我不会使用时间限制.但是你可能已经尝试过了.
例如:
using (new UseDialogOnce(ie.DialogWatcher, approveConfirmDialog))
{
ie.Button(Find.ByName("btn")).ClickNoWait();
approveConfirmDialog.WaitUntilExists();
approveConfirmDialog.OKButton.Click();
ie.WaitForComplete();
}
http://stackoverflow.com/questions/882683/watin-handling-confirm-dialogs-with-confirmdialoghandler
以上所述就是小编给大家介绍的《c# – Watin – 使用ConfirmDialogHandler处理确认对话框》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Android进度对话框
- 使用导航组件: 对话框目的地
- VBScript - 弹出“文件选择对话框”方法大全!
- jQuery实现定时隐藏对话框的方法分析
- 使用React手写一个对话框或模态框
- React造轮系列:对话框组件 - Dialog 思路
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
ES6标准入门(第3版)
阮一峰 / 电子工业出版社 / 2017-9 / 99.00
ES6是下一代JavaScript语言标准的统称,每年6月发布一次修订版,迄今为止已经发布了3个版本,分别是ES2015、ES2016、ES2017。本书根据ES2017标准,详尽介绍了所有新增的语法,对基本概念、设计目的和用法进行了清晰的讲解,给出了大量简单易懂的示例。本书为中级难度,适合那些已经对JavaScript语言有一定了解的读者,可以作为学习这门语言最新进展的工具书,也可以作为参考手册......一起来看看 《ES6标准入门(第3版)》 这本书的介绍吧!