如何使用selenium(java)在IE中打开新标签页并在该标签页(不是窗口)中打开网址? 我使用以下代码打开一个新标签?
driver.get("https://google.com/");
//below line of code opens a new tab but does sets control on new tab.
driver.findElement(By.cssSelector("Body")).sendKeys(Keys.CONTROL + "t");//opens new tab
// As control does not sets on new tab, the below link opens on first tab only..
driver.get("https://facebook.com/");//but load facebook in first tab i.e on google page
任何人都可以告诉我,如何将控件转移到新标签页,以便在新标签页中打开facebook链接。
你好
我使用的是Selenium Web-Driver版本2.40和IE 11.0
WebDriver driver = new InternetExplorerDriver(ieCapabilities);
driver.manage().window().maximize();
driver.get("https://google.com/");
driver.findElement(By.cssSelector("Body")).sendKeys(Keys.CONTROL + "t");//opens new tab
//Store the current window handle
String winHandleBefore = driver.getWindowHandle();
//Perform the click operation that opens new window //Switch to new window open
for(String winHandle : driver.getWindowHandles()){
driver.switchTo().window(winHandle);
driver.get("https://facebook.com/");
}
// Perform the actions on new window
//Close the new window, if that window no more required
driver.close();
//Switch back to original browser (first window)
driver.switchTo().window(winHandleBefore);
//continue with original browser (first window)
我无法在同一窗口的新标签页上打开Facebook ..
此致 Shashank Goyal
答案 0 :(得分:1)
您需要使用
driver.switchTo().window(String)
切换到出现的窗口,就像打开新窗口一样。
答案 1 :(得分:0)
ArrayList<String> tabHandles1 = new ArrayList<String>(driver.getWindowHandles());
driver.switchTo().window(tabHandles1.get(index));
你可以传递索引值的位置,或者可以使用arrayList tabhandles1迭代到所有选项卡