與 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.