WebDriver关闭一个警告框

时间:2010-08-31 22:07:16

标签: webdriver

如何通过单击“确定”按钮关闭警报框?我在WebDriver Google上看到Simon正在添加此功能。我不确定这是否得到支持。

4 个答案:

答案 0 :(得分:19)

driver.findElement(By.id("updateButton")).click();

//pop up with id "updateButton" opens

Alert alert = driver.switchTo().alert();
//update is executed
alert.accept();

答案 1 :(得分:8)

看看issue 27 in the Google Code Issues List。使用JavascriptExecutor覆盖浏览器的警报:

((JavascriptExecutor)driver).executeScript("window.alert = function(msg){};");

这是处理确认对话框的类似解决方案。

((JavascriptExecutor)driver).executeScript("window.confirm = function(msg){return true;};");

这是一个非常受欢迎的请求,所以希望它很快就会实现。这些方法的缺点是验证消息中的文本并不容易。您可能想要选择Selenium来做到这一点。

答案 2 :(得分:2)

C#代码:

IAlert alert = driver.SwitchTo().Alert();
alert.Accept(); 
System.Threading.Thread.Sleep(milliseconds);

答案 3 :(得分:1)

Python代码:

driver.switch_to_alert().accept()

请参阅:

  

站点包/硒/ webdriver的/远程/ webdriver.py

     

站点包/硒/ webdriver的/普通/ alert.py