【发布时间】:2019-09-02 13:18:10
【问题描述】:
出于自动化目的,我正在创建一个在表格中查找行的脚本。此行是可点击的并打开一个新的选项卡/地址。
使用 selenium,我现在可以找到表格行,单击链接,然后打开新选项卡。问题是我找不到任何方法将焦点切换到新打开的选项卡。我试图获取所有 windowHandle 并查看是否可以切换,但即使在新选项卡打开后,也只有 1 个 windowHandle。
下面是我的代码:
WebElement tableRow=driver.findElement(By.xpath("/html/body/div[1]/table/tbody/tr[2]"));
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", tableRow);
ArrayList<String> tabs = new ArrayList<String> (driver.getWindowHandles());
for(String winHandle : driver.getWindowHandles()){
driver.switchTo().window(winHandle);
}
Arraylist 始终包含 1 个单个 windowHandle,而不是 2 个。所以我无法将焦点切换到新选项卡。有没有办法解决这个问题?
【问题讨论】: