DevOps AI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud
No Result
View All Result
DevOpsAI
No Result
View All Result
Home AI & Automation

Làm việc với Alerts/Popups trong Selenium WebDriver

Huyen Tran by Huyen Tran
1 Tháng 5, 2025
in AI & Automation
0
Làm việc với Alerts/Popups trong Selenium WebDriver
Share on FacebookShare on Twitter

Trong quá trình viết Automation test, hẳn là có lúc bạn gặp Alert box/pup-up hiển thị trên màn hình và không cho phép bạn thao tác trên trang web cho đến khi pop-up được đóng lại.

Bài này tôi sẽ giới thiệu với các bạn cách xử lý Alert/pop-up trong Selenium WebDriver. Chúng ta bắt đầu nhé!

Alert/pop-up là gì?

Giới thiệu

 Alert/pop-up là một dạng hộp thoại cảnh báo được dùng để cảnh bảo người dùng về một hành động, sự kiện hay trạng thái nào đó của ứng dụng:

Các loại Alert/popup:

  1. Hộp thoại cảnh báo (Alert message)
  2. Hộp thoại xác nhận (Confirmation dialog box)
  3. Hộp thoại nhắc nhở (Prompt dialog box)

Khi hộp thoại xuất hiện, nó buộc người dùng đọc thông báo và sẽ không được thao tác gì trên cửa sổ hiện tại cũng như truy cập vào các thành phần khác của trang cho đến khi hộp thoại được đóng lại.

Related Post

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

16 Tháng 6, 2025
Selenium Tutorial – Java

Selenium Tutorial – Java

1 Tháng 5, 2025

Detox – gray box end-to-end testing automation framework cho ứng dụng React Native

1 Tháng 5, 2025

Cách xử lý các sự kiện bàn phím và chuột trong Selenium sử dụng class Actions

1 Tháng 5, 2025

Note: Các bạn có thể download HTML code của Alert Example tại đây

alertExample-1Tải xuống

1. Hộp thoại cảnh báo (Alert message)

  • Được viết bằng javaScript, sử dụng phương thức alert()
  • Được sử dụng để gửi thông tin tới người dùng
  • Hiển thị alert box với nội dung hoặc thông tin hiển thị bên trong hộp thoại và button “OK”

2. Hộp thoại xác nhận (Confirmation dialog box)

  • Được viết bằng javaScript, sử dụng phương thức confirm()
  • Được sử dụng khi muốn người dùng kiểm tra và xác nhận việc gì đó
  • Hiển thị alert box với nội dung hoặc thông tin hiển thị bên trong hộp thoại với button “OK” (Trả về giá trị true) và “Cancel” (trả về giá trị false)

3. Hộp thoại nhắc nhở (Prompt dialog box)

  • Được viết bằng javaScript, sử dụng phương thức prompt()
  • Được sử dụng khi muốn người dùng nhập thông tin/ dữ liệu
  • Khi hộp thoại bật lên, sẽ có textbox cho người dùng nhập thông tin cùng với button “OK” và “Cancel”

Cách handle Alerts/pop-ups trong Selenium WebDriver

Như các bạn thấy là sẽ không thể xác định được webElement của các dialog/alert pop-up trên nên chúng ta không thể xử lý nó như các thành phần web thông thường là xác định được locator và thực hiện action trên nó.

Selenium WebDriver có cung cấp phương thức .switchTo() cho chúng ta chuyển đổi từ cửa sổ chính sang Alert popup để thực thi các thao tác bên trong hộp thoại đó.

Alert alert = driver.switchTo().alert();

Và interface Alert() cung cấp các phương thức sau để xử lý các pop-up này

  • accept() – Phương thức này được dùng để thực hiện hành động người dùng click vào button “OK” trên hộp thoại.
  • dismiss() – Phương thức này được dùng để thực hiện hành động người dùng click vào button “Cancel” trên hộp thoại.
  • getText() – Phương thức này được dùng để thực hiện việc trả về nội dung text trên hộp thoại.
  • sendKeys(String keyToSend) – Phương thức này được dùng để thực hiện hành động người dùng nhập nội dung/ thông tin vào textbox trên hộp thoại.

Giờ chúng ta sẽ thực hiện ví dụ sau nhé:

1. Hộp thoại cảnh báo (Alert message)

  1. Mở trình duyệt Chrome và truy cập vào trang alertExample.html
  2. Click button “Try with alert box”
  3. In thông tin trên alert pop-up ra console
  4. Đóng pop-up
package SeleniumWebDriverTutorial;

import io.github.bonigarcia.wdm.WebDriverManager;
import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class AlertExample {
    public static void main (String[] args) throws InterruptedException  {
        WebDriverManager.chromedriver().setup();
        WebDriver driver = new ChromeDriver();
        driver.manage().window().maximize();
        driver.get("D:\PROJECTS\alertExample.html");
        Thread.sleep(3000);
       
        // 1. Alert pop-up
        driver.findElement(By.name("alert")).click();
        Alert alert = driver.switchTo().alert();
        System.out.println("Message: "+"n" + alert.getText());
        alert.accept();
        }
}

2. Hộp thoại xác nhận (Confirmation dialog box)

  1. Mở trình duyệt Chrome và truy cập vào trang alertExample.html
  2. Click button “Try with confirm box”
  3. In thông tin trên alert pop-up ra console
  4. Xác nhận “Cancel”
        //2. Confirmation pop-up
        driver.findElement(By.name("confirm")).click();
        Alert alert = driver.switchTo().alert();
        System.out.println("Message: "+"n" + alert.getText());
        alert.dismiss();

3. Hộp thoại nhắc nhở (Prompt dialog box)

  1. Mở trình duyệt Chrome và truy cập vào trang alertExample.html
  2. Click button “Try with prompt box”
  3. Nhập “Devopsify.co” vào textbox
  4. In thông tin trên alert pop-up ra console
  5. Xác nhận “OK”
        
        //3. Prompt pop-up
        driver.findElement(By.name("prompt")).click();
        Alert alert = driver.switchTo().alert();
        alert.sendKeys("Devopsify.co");
        System.out.println("Message: "+"n" + alert.getText());
        alert.accept();
Tags: alertsautomation testpopupsseleniumwebdriver
Huyen Tran

Huyen Tran

Related Posts

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent
AI & Automation

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

by devopsify
16 Tháng 6, 2025
Selenium Tutorial – Java
AI & Automation

Selenium Tutorial – Java

by Huyen Tran
1 Tháng 5, 2025
Detox – gray box end-to-end testing automation framework cho ứng dụng React Native
AI & Automation

Detox – gray box end-to-end testing automation framework cho ứng dụng React Native

by Huyen Tran
1 Tháng 5, 2025
Next Post
Làm việc với Login pop-up trong  Selenium WebDriver

Làm việc với Login pop-up trong Selenium WebDriver

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Recommended

Các website demo hay được sử dụng cho thực hành Automation Test

Các website demo hay được sử dụng cho thực hành Automation Test

11 Tháng 6, 2025
Cài đặt Maven trên Windows

Cài đặt Maven trên Windows

11 Tháng 6, 2025
Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

Hướng dẫn cài đặt Kubernetes trên Ubuntu 22.04

1 Tháng 5, 2025
Tổng hợp các phiên bản Stable Diffusion: So sánh, tính năng và yêu cầu phần cứng

Tổng hợp các phiên bản Stable Diffusion: So sánh, tính năng và yêu cầu phần cứng

13 Tháng 6, 2025
Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent

16 Tháng 6, 2025
MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật

16 Tháng 6, 2025
DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

13 Tháng 6, 2025
GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

GitHub Action DevOpsify Check Tool – Tự động kiểm tra bảo mật & hiệu suất

11 Tháng 6, 2025
DevOpsify

Cộng đồng DevOps Việt Nam chia sẽ kiến thức giúp tăng tốc quá trình phát triển ứng dụng và tự động hóa trong lĩnh vực Cloud DevOps & AI.

Bài viết mới

  • Sử dụng VS Code và Playwright MCP tự động test demo website Demoblaze thông qua GitHub Copilot Agent
  • MCP server 2025 tốt nhất : Hướng dẫn chọn & bảo mật
  • DevOpsify Check Tool hỗ trợ MCP – Tự động hóa kiểm tra qua AI Claude & VS Code

Categories

  • AI & Automation
  • Bảo mật
  • Chưa phân loại
  • DevOps & Cloud
  • Tin tức
No Result
View All Result
  • Home
  • Bảo mật
  • AI & Automation
  • DevOps & Cloud
  • Bộ đề luyện thi cloud

© 2025 DevOpsify