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

Pra*_*r Y 3 javascript java selenium selenium-webdriver

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

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

能够自动执行上述方案,但在运行脚本时会显示警报/弹出窗口.

他们的反正解决方法是我们可以处理javascript警报/弹出窗口吗?

Sub*_*ubh 11

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

下面是代码(单击上传按钮后):

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());
}
Run Code Online (Sandbox Code Playgroud)


Zac*_*ach 7

切换到默认内容接受"确定"后关闭警报否则您的警报来自另一个窗口,您必须切换到该窗口才能解除

driver.switchTo().alert().accept();    
driver.switchTo().alert().dismiss();  
driver.switchTo().alert().defaultConent();  
Run Code Online (Sandbox Code Playgroud)