我想念 WatiN 的一件事是能够附加到不是由 Selenium 生成的浏览器实例。在我上一个职位上,这就是我使用 WatiN 的全部原因,因为浏览器总是由另一个应用程序生成的。我希望我能够通过.getWindowHandle()
then来做到这一点.SwitchTo().Window(string)
,但这似乎并非如此。
在编写和调试脚本时,这样做的能力是无价的,并且希望我要么做错了什么,要么它在路线图上。
我想念 WatiN 的一件事是能够附加到不是由 Selenium 生成的浏览器实例。在我上一个职位上,这就是我使用 WatiN 的全部原因,因为浏览器总是由另一个应用程序生成的。我希望我能够通过.getWindowHandle()
then来做到这一点.SwitchTo().Window(string)
,但这似乎并非如此。
在编写和调试脚本时,这样做的能力是无价的,并且希望我要么做错了什么,要么它在路线图上。
我实际上并不完全确定您可以切换到不是由驱动程序生成的窗口。我认为从事 selenium 2 项目的人在切换到由不同驱动程序生成的窗口方面做了一些工作。当你这样做时:
driver.getWindowHandles()
您所得到的只是由调用它的驱动程序对象产生的窗口。
您肯定无法使用 Firefox(因为 selenium 使用 selenium xpi ~ 插件文件启动该浏览器,并且它可以控制它)。
我不确定 IE 是如何启动的,但我敢打赌这是可能的。
不确定铬。
在 Selenium 2 中确实有可能。您可以获取窗口句柄并在它们上切换到一个。IE
for (String handle : driver.getWindowHandles()) {
driver.switchTo().window(handle);
}
有关此外观的更多信息,请点击此处。