Selenium+Java(十一)Selenium窗口切換


前言:

Selenium在當前頁面打開了新的窗口,此時就需要跳轉到新的窗口去,需要把窗口進行切換。

獲取窗口句柄方法:

獲取所有

//獲取所有窗口句柄,返回的是set類型
driver.getWindowHandles();

獲取當前:

//獲取當前窗口句柄,返回的是string類型
driver.getWindowHandle();

窗口切換方法:

//窗口切換方法,需傳入想要切換窗口的句柄
driver.switchTo().window();

實例:

String url = "https://www.baidu.com/";
int j = 0 ;
//引用IE瀏覽器驅動
System.setProperty("webdriver.ie.driver", "./src/driver/IEDriverServer.exe");
//創建IE瀏覽器對象
InternetExplorerDriver driver = new InternetExplorerDriver();
//瀏覽器最大化
driver.manage().window().maximize();
//等待瀏覽器加載完畢
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
//打開網站
driver.get(url);
driver.findElement(By.id("kw")).sendKeys("上海");
driver.findElement(By.id("su")).click();
WebElement s = driver.findElement(By.xpath("//div[@id='1']/h3/a"));
s.click();
        
//獲取當前窗口句柄
String win = driver.getWindowHandle();
//獲取所有窗口句柄
Set<String>Windows = driver.getWindowHandles();
//把獲取到的窗口句柄放到list中
List<String>allWindows = new ArrayList<String>(Windows);
//切換到新打開的窗口並最大化
for (int i = 0; i < allWindows.size(); i++) {
    if (!allWindows.get(i).equals(win)) {
        j = i;
    }
}
driver.switchTo().window(allWindows.get(j));
driver.manage().window().maximize();

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM