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<String, String> 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<String> 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打开新窗口,多个窗口切换进行操作
最新推荐文章于 2024-09-21 10:02:37 发布