无法在新标签页中打开新标签页以替换第一个标签页,而不是在Firefox中打开新标签页

时间:2019-03-25 17:13:40

标签: selenium

public class TestTabs {
    public WebDriver driver;
    public WebDriver getDriver() {
        return driver;
    }

    @Before
    public void setUp() throws Exception {
        System.setProperty("webdriver.gecko.driver","/Users/Test/Downloads/geckodriver");
        driver = new FirefoxDriver();
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.manage().window().maximize();
        //driver.findElement(By.cssSelector("body")).sendKeys(Keys.COMMAND+ "t");
    }

    @Test
    public void openSameUrlInMultipleTab() throws InterruptedException {
        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
        driver.get("http://seleniumlearn.com/selenium-tutorial");
        {
            driver.findElement(By.cssSelector("body")).sendKeys(Keys.COMMAND+ "t");
            driver.get("https://www.facebook.com");
        }
    }
}

我正在使用上面的代码在一个浏览器中打开多个选项卡,但是当我在Firefox(iMac mini)中运行此代码时,我没有收到任何错误消息并传递了代码,但是第二个链接正在同一选项卡中打开,而不是在新标签页中。如何在Mac的Firefox中打开多个标签?

1 个答案:

答案 0 :(得分:0)

每个选项卡都被视为一个新窗口。使用switch.to().window()切换到新标签。

driver.switchTo().window(winHandle);
driver.get("your new url goes here");

如果要切换到默认浏览器(基本浏览器),请在此行下方的用户。

driver.switchTo().defaultContent();