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

1、經過按鈕點擊打開的新頁面,不涉及到打開多窗口,只要在已有打開的窗口實現切換操做便可url

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

//跳轉到新打開的窗口get

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

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

driver.close();//經過這句能夠將當前窗口給關閉方法

//回退到原有的窗口tab

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

2、經過driver.get(url)打開多個窗口script

試過不少次,好比new

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便可

相關文章
相關標籤/搜索