当前位置: 首页 > 知识库问答 >
问题:

如何使用Selenium WebDriver在后台打开chrome new tab窗口?

池照
2023-03-14

如果我使用的只是进程启动,它将打开一个新的浏览器chrome窗口,但将集中在窗口上。我想打开一个新的chrome选项卡,但如果没有焦点,该选项卡将在当前窗口后面的背景上。

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();
        }

共有1个答案

毕胡非
2023-03-14

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

如果打开了一个选项卡并打开了另一个选项卡,可以立即调用该选项卡返回到以前打开的选项卡。如果您打开了许多选项卡,并且只想回到第一个选项卡,您应该能够将“MyDriver.WinDowHandles.count-1”替换为“0”。

ChromeDriver myDriver = new ChromeDriver();
myDriver.SwitchTo().Window(myDriver.WindowHandles[myDriver.WindowHandles.Count - 1]);
 类似资料:
  • 问题内容: 我正在使用Twitter Bootstrap模态窗口功能。当有人单击我的表单上的提交时,我想在单击表单中的“提交按钮”时显示模式窗口。 jQuery的: 问题答案: Bootstrap具有一些可以在模式上手动调用的功能: 您可以在此处看到更多信息:Bootstrap模态组件 特别是方法部分。 因此,您需要更改: 至:

  • 问题内容: 有什么办法可以使可执行文件.jar双击后打开命令行? 我正在制作一个基于文本的冒险游戏。截至目前,它只是带有房间的迷宫。最终它将变得更大,更深入,但是现在我只想了解基本结构。无论如何,要完成这项工作,我一直在从System.out.printf命令和java.util.Scanner获取输出和输入。到目前为止,所有功能都运行良好,但是当我尝试将其发送给不知道如何或者不想从命令行运行程序

  • 问题内容: 我在应用程序中使用selenium+ phantomjs,但我想在后台启动我的应用程序,selenium和phantomjs窗口。我该怎么做? 我试过了: 问题答案:

  • 问题内容: 我有一个selenium测试套件,可以运行许多测试,并且在每个新测试中,它都会在我打开的任何其他窗口之上打开一个浏览器窗口。在本地环境中工作时非常刺耳。有什么办法告诉Selenium或OS(MAC)在后台打开窗口? 问题答案: 有几种方法,但这不是简单的“设置配置值”。除非您购买了不适合每个人的要求的无头浏览器,否则它有点黑: 如何隐藏Firefox窗口(SeleniumWebDriv

  • 我有一个Selenium测试套件,它运行许多测试,并且在每个新测试中,它会在我打开的任何其他窗口之上打开一个浏览器窗口。在本地环境中工作时非常不和谐。有没有办法告诉Selenium或OS(Mac)在后台打开窗口?

  • 问题内容: 我如何在seleniumwebdriver 3.0 beta版本中使用geckodriver。当我实例化Firefox时: 我得到错误: 线程“主”中的异常java.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置;否则,必须执行以下操作:有关更多信息,请参见 https://github.co