JAVA selenium打开新窗口,多个窗口切换进行操作

  System.out.println("正在打开浏览器");
        //1、引入谷歌驱动 控制浏览器
        System.setProperty(driver, chromeDriver);
        //2、打开浏览器
        WebDriver driver = new ChromeDriver();
        //3、设置超时等待30秒 窗口最大化
        Duration duration = Duration.ofSeconds(30);
        driver.manage().timeouts().implicitlyWait(duration);
        driver.manage().window().maximize();

        //4、创建一个map集合存放浏览器句柄
        HashMap handleMap = new HashMap<>();

        //5、访问百度
        driver.get("https://www.baidu.com/");

        //6、获取到打开百度窗口的句柄
        String baiDuHandle = driver.getWindowHandle();

        //7、将百度句柄放到map中
        handleMap.put("baidu", baiDuHandle);

        //8、新开一个窗口,用js来完成
        String js = "window.open(\"https://www.sogou.com\");";
        ((JavascriptExecutor) driver).executeScript(js);

        //9、获取到所有的句柄
        Set set = driver.getWindowHandles();

        //10、循环找到搜狗窗口句柄
        for (String s : set) {
            //10.1、将搜狗的句柄放到map中
            if (!s.equals("baiDuHandle"))
                handleMap.put("souGou", s);
        }

        //11、切换到搜狗的窗口
        driver.switchTo().window(handleMap.get("souGou"));

        //12、然后跳转一个页面
        driver.get("https://fanyi.youdao.com/");

        //13、退出所有页面
        driver.quit();
    }

你可能感兴趣的:(java,selenium,java,selenium,开发语言)