3 回答

TA貢獻1839條經(jīng)驗 獲得超15個贊
如果您不想按 Esc 鍵,您可以單擊已創(chuàng)建的 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條經(jīng)驗 獲得超5個贊
這不是警報,它只是一個普通的DOM片段,由于CSS 樣式,它看起來像一個模態(tài)彈出窗口
因此,您需要做的就是使用例如它的文本來定位元素,相關(guān)的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();
添加回答
舉報