首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Selenium WebDriver在后台打开chrome新选项卡窗口?

如何使用Selenium WebDriver在后台打开chrome新选项卡窗口?
EN

Stack Overflow用户
提问于 2015-05-23 05:56:39
回答 1查看 4.5K关注 0票数 2

如果我使用的只是进程启动,它会打开一个新的浏览器chrome窗口,但会聚焦在窗口上。我想打开一个新的chrome标签,但是如果没有焦点在上面,这个标签将会在我现在所在的窗口后面的背景上。

只有当我单击浏览器图标时,我才会看到打开的选项卡,并且可以单击该选项卡以将焦点放在该选项卡上。

在Form1 top中,我做到了:

代码语言:javascript
复制
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;

构造函数:

代码语言:javascript
复制
OpenBroswerTab();

代码语言:javascript
复制
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打开的新标签/窗口。新打开的选项卡/窗口应该在后台最小化打开,这样我就看不到它打开了。

EN

回答 1

Stack Overflow用户

发布于 2015-07-27 08:38:18

可以使用窗控制柄来控制选项卡:

如果您打开了一个选项卡,然后又打开了另一个选项卡,则可以立即调用它以返回到先前打开的选项卡。如果您打开了许多选项卡,并且只想返回到第一个选项卡,您应该能够简单地将"myDriver.WindowHandles.Count -1“替换为"0”。

代码语言:javascript
复制
ChromeDriver myDriver = new ChromeDriver();
myDriver.SwitchTo().Window(myDriver.WindowHandles[myDriver.WindowHandles.Count - 1]);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30406431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档