【问题标题】:How to open two different url's in two tabs in same browser and switch between them [duplicate]如何在同一浏览器的两个选项卡中打开两个不同的网址并在它们之间切换[重复]
【发布时间】:2019-05-04 16:17:11
【问题描述】:

我需要在两个不同的选项卡中打开两个不同的 url,然后我需要在它们之间不断切换,因为我的应用程序流程就是这样。

我已经包含了一些用于打开不同 URL 的代码以及窗口处理代码,但它似乎无法正常工作,因为第一个选项卡会打开 gmail.com,然后是 yahoo.com,然后第二个选项卡会打开 yahoo.com。我需要将 tab1 设置为 gmail.com,将 tab2 设置为 yahoo.com,并且我需要在脚本之间随时切换到它们。

    driver=new ChromeDriver();          
        driver.manage().window().maximize();
        driver.get("https://www.gmail.com");
        Thread.sleep(3000);
((JavascriptExecutor)driver).executeScript("window.open()");
        handlewindlow("Untitled"); //Untitled is title for new tab


}

        static void handlewindlow(String title) {
            Set<String>setHandleValues=driver.getWindowHandles();

Iterator<String> iteHandleValues=setHandleValues.iterator();    
                   while(iteHandleValues.hasNext()==true){
            String handleValue=iteHandleValues.next();
                driver.switchTo().window(handleValue);
                CurrentUrl=driver.getCurrentUrl();      
                String CurrentUrl=driver.getTitle();        
                driver.get("https://www.yahoo.com");

        }
    }

【问题讨论】:

    标签: selenium selenium-webdriver


    【解决方案1】:

    这是我将使用的逻辑。

    WebDriver driver = new ChromeDriver();
    driver.get("https://google.com");
    String firstTab = driver.getWindowHandle();
    // open yahoo in new tab        
    JavascriptExecutor js = (JavascriptExecutor) driver; 
    js.executeScript("window.open('https://yahoo.com')");
    // get the 2nd browser handle
    for(String winHandle : driver.getWindowHandles()){
        driver.switchTo().window(winHandle);
    }
    String secondTab = driver.getWindowHandle();
    
    // switching to first tab
    driver.switchTo().window(firstTab);
    
    //switching to second tab
    driver.switchTo().window(secondTab);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-12
      • 1970-01-01
      相关资源
      最近更新 更多