打开新的url窗口,而不知道url Selenium webDriver
本文关键字:url 不知道 Selenium webDriver 窗口 | 更新日期: 2023-09-27 18:01:17
在所有Selenium代码示例中,如果我想打开webdriver特定的网站页面,它会像这样
' chromeDriver.Navigate () .GoToUrl (sitename);
但现在我有一个问题,当我点击网页,我正在测试其打开的新网站(第三方网站),我不能提前知道URL。所以有人知道,我怎么知道什么是在新页面打开的URL ??
您可以使用driver.Url
访问当前url。
试试这个:
driver.get("https://stackoverflow.com");
Actions action = new Actions(driver);
action.moveToElement(driver.findElement(By.xpath("//*[@id='nav-tags']"))).sendKeys(Keys.SHIFT).click().build().perform();
// You have opened your unknown site in a new window till now
String currentWindowHandle = driver.getWindowHandle();
ArrayList < String > windowHandles = new ArrayList < String > (driver.getWindowHandles());
for (int i = 0; i < windowHandles.size(); i++) {
if (windowHandles.get(i).equals(currentWindowHandle)) {
//SwitchTo new Window
driver.switchTo().window(windowHandles.get(i + 1));
//Do your stuff like get URL that tou need
System.out.println(driver.getCurrentUrl());
System.out.println(driver.getTitle());
//Close the newly opened window
driver.close();
}
}
driver.switchTo().window(currentWindowHandle);
这将在一个新窗口中打开标签窗口,并获取该窗口的URL,假设这是你想要的