使用Selenium Java(Mac OSX)将Firefox浏览器置于最前面
我正在使用三个firefox驱动程序实例进行自动化。我需要将当前活动的firefox浏览器置于最前面,因为我正在使用一些robo类来进行某些操作。我曾在Mac中尝试过Google
chrome的Java脚本警报(相同操作),并且工作正常。在Windows中使用user32 lib。对于firefox
mac,其在后台显示警报,但网页不在最前面。
((JavascriptExecutor)this.webDriver).executeScript("alert('Test')");this.webDriver.switchTo().alert().accept();
我在Mac中用于chrome的上述代码。相同的代码正在工作,并显示有关Firefox的警报,但窗口未显示在最前面。
请建议在firefox中是否还有其他方法可以这样做。
回答:
首先将窗口句柄存储在变量中,然后再使用它返回窗口。
//Store the current window handleString currentWindowHandle = this.webDriver.getWindowHandle();
//run your javascript and alert code
((JavascriptExecutor)this.webDriver).executeScript("alert('Test')");
this.webDriver.switchTo().alert().accept();
//Switch back to to the window using the handle saved earlier
this.webDriver.switchTo().window(currentWindowHandle);
此外,您可以尝试在切换到窗口后最大化它,这也应该激活它。
this.webDriver.manage().window().maximize();
以上是 使用Selenium Java(Mac OSX)将Firefox浏览器置于最前面 的全部内容, 来源链接: utcz.com/qa/425614.html