我在 Windows 7 64 位的 IE9 上运行了自动化测试。被测应用程序是一个简单的网络表单,每个页面上都有一个“下一步”按钮。当我在 Firefox 12 上运行自动化测试时,它们在后台运行,而我可以继续在不同的浏览器中处理其他内容。
但是,当我从 IE9 启动测试套件并让它在后台运行时,测试卡在“下一步”按钮上。Webdriver 似乎找到并单击它,但没有导航到下一页。显然,由于 TimeoutExceptions,有很多失败的测试。
为了避免这些错误,我在晚上运行了我的测试套件,没有运行其他应用程序并更改了我的 PC 的电源设置,因此它没有关闭或进入睡眠模式等。但是我仍然看到很多 TimeoutExceptions。(在 Firefox12 中没有发生)
是否需要设置 IE 9 来更改此行为?有没有人有类似的经历?
谢谢!
编辑:这是我在 Webdriver 邮件列表上从 Jim Evans 收到的回复。
这是 IE 驱动程序的一个众所周知且有据可查的问题,因为它目前的架构 [1]。做出架构决策的原因以及它们在 IE 中成为挑战的原因也已被详细讨论过[2]。我们正在努力在 IE 驱动程序[3] 中实现合成事件,它们有自己的一系列问题,尽管它们会解决这个特定的问题,但它们还没有完全准备好使用。
——吉姆
[1] http://code.google.com/p/selenium/wiki/InternetExplorerDriver注意标题为“窗口焦点”的部分
由于这是一个已知问题,是否有人有经过尝试和测试的解决方法?