selenium-webdriver - 有没有办法通过 webdriver 验收测试来做“如果我看到,那么……”?
问题描述
我正在使用 webdriver 进行验收测试。https://codeception.com/docs/03-AcceptanceTests#WebDriver 我遇到了一个问题,取决于是否启动了新功能,有时会弹出一个窗口来通知用户新功能。因此,根据我们在发布周期中所处的位置,该弹出窗口可能存在也可能不存在。有没有办法说:“如果我看到,请单击关闭”?
解决方案
您没有说您使用的是哪种编程语言,但 Groovy (Java) 中的以下内容会检查警报/模式弹出窗口。您可以在方法中关闭它或在 if 语句中使用返回值。
您应该能够根据您的语言对其进行调整。
def isAlertPresent(driver){
boolean foundAlert = false
WebDriverWait wait = new WebDriverWait(driver, 10) //time-out secs
try {
wait.until(ExpectedConditions.alertIsPresent())
foundAlert = true
} catch (TimeoutException e) {
foundAlert = false
}
return foundAlert
}