我的问题很简单-使用 Selenium,当每个超链接在新页面或新窗口中打开或在同一网页中打开时,您如何继续单击链接。
例如,我在网页上有以下链接: 登录 注册 忘记密码?通过此链接向我们注册 主页 条款 隐私政策
这是我为单击网页上提到的这些链接而编写的一小段代码:
List<WebElement> elements = driver.findElements(By.tagName("a"));
//clicking all links
for (WebElement el : elements){
System.out.println("Link getting clicked" + el.getText());
el.click();
driver.navigate().back();
}
如您所见,我正在尝试获取链接并尝试一一点击它们。但是,我在第一次单击后出现错误。控制台说:“org.openqa.selenium.StaleElementReferenceException:元素不再附加到 DOM”。
我很确定我知道原因,因为链接在同一个网页上打开,但我正在做一个后退导航,这对我一点帮助都没有。
有什么想法/建议吗?