作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 selenium WebDriver 处理对话框(确定取消类型)。所以我的目标是单击“确定”按钮。
场景是:
单击按钮调用对话框
button.click()
;
尝试接受
webDriver.switchTo().alert().accept()
;
但我总是收到 NoAlertPresentException 并看到该对话框几乎立即关闭。在我看来,Selenium 会自动关闭对话框,当我想接受时,却没有什么可以接受的。
我很抱歉我的英语不好。
最佳答案
此问题的常见原因是 Selenium 速度太快,并尝试接受浏览器尚未打开的警报。这可以通过显式等待来简单地解决:
button.click();
WebDriverWait wait = new WebDriverWait(driver, 5);
Alert alert = wait.until(ExpectedConditions.alertIsPresent());
alert.accept();
关于 Selenium NoAlertPresentException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17749064/
我正在尝试使用 selenium WebDriver 处理对话框(确定取消类型)。所以我的目标是单击“确定”按钮。 场景是: 单击按钮调用对话框 button.click(); 尝试接受 webDri
我正在尝试接受在我的网页上删除元素时弹出的 javascript 警告。当我使用 accept_alert() 或 dismiss_alert() 时,我收到了 NoAlertPresentExcep
我的测试检查我是否可以向邮件发送消息。 当我单击发送按钮时,应该检查警报。 我的警报代码是: Alert alert = driver.switchTo().alert();
我是一名优秀的程序员,十分优秀!