POM (PAGE OBJECT MODEL)
Mô hình thiết kế tối ưu cho kiểm thử tự động
1.Giới thiệu về POM
- POM (Page Object Model) là một mô hình thiết kế trong Selenium giúp tổ chức mã kiểm thử tốt hơn bằng cách tách riêng phần logic của trang web ra khỏi test case.
- Lưu trữ các element riêng,lớp xử lý thao tác và lớp main để thực hiện testcase tự động
2.Class BaseTest thiết lập đường dẫn chung đến trình duyệt
-Class BaseTest là lớp cơ sở chưa phương thức setUp (khởi chạy trình duyệt) và tearDown (Đóng trình duyệt)
System.setProperty("webdriver.chrome.driver", "C:\\chromedriver.exe");
-Thiết lập đường dẫn ChromeDriver để Selenium có thể sử dụng
driver.get("https://xaydungphanmem.com/lien-he");
Điều hướng đến trang liên hệ của trang web
-Phương thức tearDown
Hình 1:Class BaseTest thiết lập đường dẫn chung đến trình duyệt
3. Class ContactPageElements định nghĩa các element (phần tử)
- Public static final là biến hằng số dùng chung
Hình 2:Trang liên hệ
Hình 3:Class ContactPageElements định nghĩa các phần tử
4. Class ContactPage xử lý tự động tương tác với trang web
- Khai báo biến private đảm bảo chỉ có thể truy cập bên trong lớp này
- Public ContactPage hàm này nhận một đối tượng WebDriver làm tham số.
- Tất cả đều dùng driver.findElement(...) để tìm và thao tác với phần tử UI
Hình 4:Class ContactPage tự động thao tác với form liên hệ
5. Class ContactForm thực thi kịch bản kiểm thử tự động
- Class ContactForm kế thừa lớp BaseTest
- Tạo 1 đối tượng new ContactForm để tương tác form liên hệ
- Gọi phương thức setUp() từ đối tượng test để thiết lập môi trường kiểm thử.
- Tạo đối tượng contactPage từ class ContactPage, test.driver là 1 WebDriver được khởi tạo trong setUp() của test,và thao tác được truyền vào ContactPage để thao tác với trình duyệt
- Điền thông tin vào các đối tượng và chạy
Hình 5: Tự động kiểm thử form liên hệ
Hình 6: Kết quả
Uyển Nhi
XƯỞNG THỰC TẬP PLT SOLUTIONS
www.youtube.com/@pltsolutions3010