与 Java 的 Selenium
以下是如何使用 Selenium 处理 Java 中的弹出警报:
弹出窗口有 3 种类型。
- 简单警报 :警报(这是一个简单的警报);
- 确认警报 :var popuResult = confirm(“确认弹出,单击确定和取消按钮”);
- 提示警告 :var person = prompt(“你喜欢 stackoverflow 吗?”,“是/否”);
它的用户需要在他们的测试用例中处理哪种类型的弹出窗口。
你可以
-
accept()
接受警报 -
dismiss()
解除警报 -
getText()
获取警报的文本 -
sendKeys()
将一些文本写入警报
对于简单警报:
Alert simpleAlert = driver.switchTo().alert();
String alertText = simpleAlert.getText();
System.out.println("Alert text is " + alertText);
simpleAlert.accept();
对于确认警报:
Alert confirmationAlert = driver.switchTo().alert();
String alertText = confirmationAlert.getText();
System.out.println("Alert text is " + alertText);
confirmationAlert.dismiss();
对于提示警报:
Alert promptAlert = driver.switchTo().alert();
String alertText = promptAlert .getText();
System.out.println("Alert text is " + alertText);
//Send some text to the alert
promptAlert .sendKeys("Accepting the alert");
Thread.sleep(4000); //This sleep is not necessary, just for demonstration
promptAlert .accept();
根据你的需求。
另一种方法是将代码包装在 try-catch 中:
try{
// Your logic here.
} catch(UnhandledAlertException e){
Alert alert = driver.switchTo().alert();
alert.accept();
}
// Continue.