开发者

WebDriver dismiss an Alert box

how to dismiss a alert box by clicking "OK" button? I saw on WebDriver Google group that Simon is adding this feature. I 开发者_JAVA技巧am not sure whether this is supported or not.


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

//pop up with id "updateButton" opens

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


Take a look at issue 27 in the Google Code Issues List. Use the JavascriptExecutor to override the browser's alert:

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

It's a similar solution to handle confirmation dialogs.

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

This is a pretty popular request so hopefully it'll get implemented soon. The downside to these approaches is that it's not easy to validate the text in the message. You may want to step down to Selenium to do that.


C# code:

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


Python code:

driver.switch_to_alert().accept()

See:

site-packages/selenium/webdriver/remote/webdriver.py

site-packages/selenium/webdriver/common/alert.py

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜