我有两个带有文本“x”的按钮,它们都有相同的 cssSelector a.aui-button.aui-button-link.aui-restfultable-delete.aui-restfultable-delete-small
下面的代码可以点击第一个“x”,但是失败了,因为有一个弹出窗口要求确认删除。
我希望代码单击第一个“x”,然后单击“删除”在弹出窗口中确认,然后重复第二个“x”。弹出窗口中“删除”的 cssSelector 为 aui-button.js-confirm-action-button
例如(截图)
//Delete all existing Request Types
List<WebElement> allele = driver.findElements(By.cssSelector("a.aui-button.aui-button-link.aui-restfultable-delete.aui-restfultable-delete-small"));
// Looping through the elements using for-each loop
for(WebElement eachEle : allele) {
// Checking whether the element is enabled or not
if(eachEle.isEnabled()) {
eachEle.click();
}
}
有什么建议我可以编写代码来做到这一点吗?检查此处的图像以了解我正在尝试做什么Example Image
最佳答案
修改如下代码段:
// Initializing the webdriver wait
WebDriverWait wait = new WebDriverWait(driver, 10);
//Delete all existing Request Types
List<WebElement> allele = driver.findElements(By.cssSelector("a.aui-button.aui-button-link.aui-restfultable-delete.aui-restfultable-delete-small"));
// Looping through the elements using for-each loop
for(WebElement eachEle : allele) {
// Checking whether the element is enabled or not
if(eachEle.isEnabled()) {
eachEle.click();
wait.until(ExpectedConditions.alertIsPresent());
Alert alert = driver.switchTo().alert();
alert.accept();
}
}
希望这有帮助。
关于java - 在 Selenium Webdriver 中循环运行 Java 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38501098/