如果我使用的只是进程启动,它会打开一个新的浏览器chrome窗口,但会聚焦在窗口上。我想打开一个新的chrome标签,但是如果没有焦点在上面,这个标签将会在我现在所在的窗口后面的背景上。
只有当我单击浏览器图标时,我才会看到打开的选项卡,并且可以单击该选项卡以将焦点放在该选项卡上。
在Form1 top中,我做到了:
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;构造函数:
OpenBroswerTab();和
private void OpenBroswerTab()
{
IWebDriver driver = new ChromeDriver();
driver.Navigate().GoToUrl("http://stackoverflow.com/");
IWebElement body = driver.FindElement(By.TagName("body"));
body.SendKeys(OpenQA.Selenium.Keys.Control.ToString() + 't');
//driver.Quit();
}但在使用此代码时,我仍然可以看到chrome打开的新标签/窗口。新打开的选项卡/窗口应该在后台最小化打开,这样我就看不到它打开了。
发布于 2015-07-27 08:38:18
可以使用窗控制柄来控制选项卡:
如果您打开了一个选项卡,然后又打开了另一个选项卡,则可以立即调用它以返回到先前打开的选项卡。如果您打开了许多选项卡,并且只想返回到第一个选项卡,您应该能够简单地将"myDriver.WindowHandles.Count -1“替换为"0”。
ChromeDriver myDriver = new ChromeDriver();
myDriver.SwitchTo().Window(myDriver.WindowHandles[myDriver.WindowHandles.Count - 1]);https://stackoverflow.com/questions/30406431
复制相似问题