java selenium針對多種情況的多窗口切換


一、通過按鈕點擊打開的新頁面,不涉及到打開多窗口,只要在已有打開的窗口實現切換操作即可

Set<String> winHandels = driver.getWindowHandles();
List<String> it = new ArrayList<String>(winHandels);
String url = driver.getCurrentUrl();
System.out.println(url);

//跳轉到新打開的窗口

driver.switchTo().window(it.get(1));

不加這一句,無法定位到新窗口的元素

driver.close();//通過這句可以將當前窗口給關閉

//回退到原有的窗口

driver.switchTo().window(it.get(0));

二、通過driver.get(url)打開多個窗口

試過很多次,比如

driver.get(url1);//open url1

driver.get(url2);//open url2

當執行到open url2的時候,url1會被關閉,那怎么實現打開多個窗口或者說在已有的窗口上new tab呢?

Method1:可以使用js

((JavascriptExecutor ) driver).executeScript("window.open(\"http://baidu.com\");");

可以通過js實現new tab

或者js打開空的tab頁面,driver.get(url2)也可以實現;

Method2:

WebDriver driver1 = new FirefoxDriver();

WebDriver driver2 = new FirefoxDriver();

driver1.get(url1);

driver2.get(url2);

通過實例化兩個driver,然后分別打開不同的url,這也是個巧方法

在對應的頁面操作完成后關閉driver即可

 


免責聲明!

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



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