Selenium:在Chrome中的同一浏览器上未打开新选项卡

Selenium:在Chrome中的同一浏览器上未打开新选项卡,selenium,selenium-webdriver,selenium-chromedriver,Selenium,Selenium Webdriver,Selenium Chromedriver,我正试图在同一浏览器中打开一个新选项卡,但它似乎不起作用。我使用的是Chrome版本58.0.3029.110(64位)和Selenium 3.0.0 我使用了以下代码: driver.findElement(由.cssSelector(“body”)).sendKeys(Keys.CONTROL+“\t”)尝试使用JavascriptExecutor,如下所示: ((JavascriptExecutor) driver).executeScript("window.open('https:/

我正试图在同一浏览器中打开一个新选项卡,但它似乎不起作用。我使用的是Chrome版本58.0.3029.110(64位)和Selenium 3.0.0

我使用了以下代码:


driver.findElement(由.cssSelector(“body”)).sendKeys(Keys.CONTROL+“\t”)

尝试使用JavascriptExecutor,如下所示:

 ((JavascriptExecutor) driver).executeScript("window.open('https://www.google.com');");

您还可以将Robot类与SeleniumWebDriver一起使用以打开新选项卡。我们需要遵循以下三个步骤-

  • 使用Robot类模拟按下键盘的Ctrl+t键
  • 使用driver.switchTo()命令切换到selenium中的新选项卡
  • 在“新建”选项卡上打开所需链接
  • 代码片段-

    //Launch the first URL
    driver.get("http://www.google.com");
    
    //Use robot class to press Ctrl+t keys          
    Robot robot = new Robot();                          
    robot.keyPress(KeyEvent.VK_CONTROL); 
    robot.keyPress(KeyEvent.VK_T); 
    robot.keyRelease(KeyEvent.VK_CONTROL); 
    robot.keyRelease(KeyEvent.VK_T);
    
    //Switch focus to new tab
    ArrayList<String> tabs = new ArrayList<String (driver.getWindowHandles());
    driver.switchTo().window(tabs.get(1));
    
    //Launch URL in the new tab
    driver.get("http://google.com");
    
    //启动第一个URL
    驱动程序。获取(“http://www.google.com");
    //使用robot类按Ctrl+t键
    机器人=新机器人();
    机器人按键(KeyEvent.VK_控制);
    robot.keyPress(KeyEvent.VK_T);
    robot.keyRelease(KeyEvent.VK_控制);
    robot.keyrease(KeyEvent.VK_T);
    //将焦点切换到新选项卡
    
    ArrayList tabs=新ArrayList你搜索过chrome设置了吗?