3 回答
TA贡献1839条经验 获得超15个赞
如果您不想按 Esc 键,您可以单击已创建的 div,以使用以下方法覆盖页面的其余部分:
driver.get("https://demo.stqatools.com/MouseHover.php");
WebElement hoverButton = driver.findElement(By.cssSelector(".dropbtn"));
WebElement linkOne = driver.findElement(By.cssSelector(".dropdown-content > a"));
//Activate modal dialogue
Actions action = new Actions(driver);
action.moveToElement(hoverButton).perform();
wait.until(ExpectedConditions.visibilityOf(linkOne));
action.moveToElement(linkOne).click().perform();
//Dismiss modal dialogue
driver.findElement(By.cssSelector(".show")).click();
TA贡献1876条经验 获得超5个赞
这不是警报,它只是一个普通的DOM片段,由于CSS 样式,它看起来像一个模态弹出窗口
因此,您需要做的就是使用例如它的文本来定位元素,相关的XPath 定位器类似于:
//div[contains(text(),'You click on Dropdown hover Option')]
通过WebDriverWait来“等待”直到弹出窗口存在/难处理也很好,例如:
new org.openqa.selenium.support.ui.WebDriverWait(driver, 10) .until( ExpectedConditions.elementToBeClickable( By.xpath("//div[contains(text(),'You click on Dropdown hover Option')]"))) .click();
添加回答
举报