我正在尝试一次开发和运行2个测试项目(使用相同的Web应用程序)。当我使用2个NUNIT-GUI实例运行2个不同的测试时会出现问题,因为IE共享会话,1个测试会影响另一个(从应用程序中注销用户)。我发现Watin可以创建IE的单独进程,构造函数:
IE 构造函数(String,Boolean)
参数:
url URL te open createInNewProcess 如果设置为true,则在新进程中创建IE实例。
但是当我将createInNewProcess设置为true并启动测试时,只打开一个空白的IE窗口,输入的网站地址和NUNIT都没有超时通信:
WatiN.Core.Exceptions.IENotFoundException :找不到IE窗口匹配 约束:等待时超时 附加到新创建的实例 IE ..搜索在“30”后过期 秒。
可能是什么问题?目前,我已经开始虚拟化第二个系统。
答案 0 :(得分:4)
Watin使用系统中安装的IE,因此即使您创建较新的实例,它们也将共享同一会话,这是由于Internet Explorer的默认行为。你无法与Watin并行运行多次登录。
此外,WatiN.Core.Exceptions.IENotFoundException偶尔出现在Watin打开的前一个IE实例仍未关闭的情况下。 Watin试图在下次运行中搜索它并抛出此异常。
确保转到任务管理器并关闭所有IE实例,然后开始测试。
答案 1 :(得分:0)
也可能意味着您正在从服务运行此功能。从服务运行时我不断收到此错误消息,但从命令行运行时却没有。