java - 如何在 selenium webdriver 中处理 Javascript 警报/弹出窗口

标签 java javascript selenium selenium-webdriver

我不确定 selenium webdriver 是否可以处理 Javascript 警报/弹出窗口。

我有一个场景
1. 用户上传一个xls文件并点击上传按钮
2. 将显示警报/弹出窗口。单击窗口上的“确定”

我能够自动执行上述场景,但在运行脚本时会显示警报/弹出窗口。

无论如何,我们可以处理 javascript 警报/弹出窗口的解决方法是什么?

最佳答案

您也可以尝试等待警报出现然后接受它

下面是相关代码(点击上传按钮后):

try{
   //Wait 10 seconds till alert is present
   WebDriverWait wait = new WebDriverWait(driver, 10);
   Alert alert = wait.until(ExpectedConditions.alertIsPresent());

   //Accepting alert.
   alert.accept();
   System.out.println("Accepted the alert successfully.");
}catch(Throwable e){
   System.err.println("Error came while waiting for the alert popup. "+e.getMessage());
}

关于java - 如何在 selenium webdriver 中处理 Javascript 警报/弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27841988/

相关文章:

javascript - 从数据表中以 json 形式从 Controller 获取数据

javascript - Node 'readline' 模块没有 'end' 事件 - 当没有更多行时我该怎么做?

java - 无法在 selenium-java 中使用 xpath 错误定位元素

java - 如何实现 ArrayList 将 "Room"对象添加到 "House"对象列表中?

java - 一种返回3种格式数据的方法

java - 一些 Java 模/余数运算符问题

java - 为什么 Kotlin sortBy() 似乎以相反的顺序运行?

javascript - 在 Typescript 中使用保留关键字作为类/实例的方法

html - 用于 div 类复合文本的 Selenium Webdriver 定位器

java - 即使使用 selenium Web 驱动程序在移动 Web 应用程序中成功执行 click() 方法,屏幕也不会导航