Selenium có thể xử lý JavaScript không?
Chúng tôi có thể xử lý cửa sổ bật lên JavaScript bằng Selenium webdriver với sự trợ giúp của giao diện Cảnh báo. Cảnh báo là cửa sổ bật lên chuyển trọng tâm từ trang web chính sang văn bản cảnh báo xuất hiện trên trang Show Theo mặc định, trình điều khiển web có tiêu điểm trên trang chính, để truy cập cảnh báo, chúng tôi phải chuyển tiêu điểm trình điều khiển từ trang chính sang hộp cảnh báo một cách rõ ràng. Các cảnh báo có thể có hai loại - dựa trên web và dựa trên cửa sổ. Cửa sổ bật lên JavaScript là các cảnh báo dựa trên web Công tắcTo(). phương thức alert() được sử dụng để chuyển tiêu điểm trình điều khiển sang cảnh báo. Khi tiêu điểm của trình điều khiển được thay đổi, chúng ta có thể lấy văn bản của cửa sổ bật lên với sự trợ giúp của phương thức switchTo(). báo động(). getText(). Cuối cùng, chúng ta sẽ sử dụng switchTo(). báo động(). accept() để chấp nhận cảnh báo và switchTo(). báo động(). phương thức bỏ qua () để loại bỏ nó Để nhập văn bản bên trong cảnh báo xác nhận, phương thức switchTo(). báo động(). sendKeys() được sử dụng. Văn bản được nhập được truyền dưới dạng tham số cho phương thức này. Ngoài ra, chúng ta phải thêm tổ chức nhập khẩu. openqa. selen. Tuyên bố cảnh báo để làm việc với các cảnh báo 'Cảnh báo JS', chúng tôi nhận được cảnh báo bên dưới bằng nút OK. Khi chúng tôi nhấp vào OK, chúng tôi sẽ thấy kết quả văn bản bên dưới 'Kết quả. ’ tiêu đề như hình bên dưới.
Hãy để chúng tôi tự động hóa từng hành động trên 2 cảnh báo này Trước hết chúng ta hãy kiểm tra 'Cảnh báo JS' button Đoạn mã trông như dưới đây Chạy tập lệnh, quan sát xem có thấy cảnh báo không Chúng ta hãy tiếp tục trường hợp sử dụng này bởi performing below operations: Có thể bạn quan tâmĐoạn mã dưới đây sẽ làm điều cần thiết Chạy tập lệnh, quan sát xem bảng điều khiển in văn bản mong muốn Tiếp theo chúng ta hãy kiểm tra nút 'Xác nhận JS'
Chạy tập lệnh, chú ý văn bản trên bàn điều khiển Xử lý cửa sổ bật lên JStrong Selenium 4 Khi chúng tôi nhấp vào 'JS Prompt' popup, we get the below popup with on OK and Cancel button plus the text field where we can enter some text. When we nhập một số văn bản và nhấp vào OK,< . ’ tiêu đề we see the text that we had entered under ‘Result:’ header Nếu chúng tôi nhấp vào Hủy, chúng tôi sẽ thấy văn bản bên dưới Hãy để chúng tôi tự động hóa các hành động trên cửa sổ bật lên này Đầu tiên chúng ta hãy kiểm tra ‘JS Prompt’
Chạy tập lệnh, bên dưới là nhật ký bảng điều khiển Chúng ta hãy mở rộng trường hợp sử dụng này một chút. Khi chúng tôi nhập một số văn bản như được hiển thị ở trên và nhấp vào Ok, chúng tôi sẽ thấy văn bản mà chúng tôi đã nhập dưới tiêu đề 'Kết quả' như hình bên dưới WebDriver cung cấp API để làm việc với ba loại thông báo bật lên gốc do JavaScript cung cấp. Các cửa sổ bật lên này được trình duyệt tạo kiểu và cung cấp khả năng tùy chỉnh hạn chế cảnh báoĐơn giản nhất trong số này được gọi là cảnh báo, hiển thị thông báo tùy chỉnh và một nút duy nhất loại bỏ cảnh báo, được gắn nhãn trong hầu hết các trình duyệt là OK. Nó cũng có thể bị loại bỏ trong hầu hết các trình duyệt bằng cách nhấn nút đóng, nhưng thao tác này sẽ luôn hoạt động giống như nút OK. Xem một ví dụ cảnh báo WebDriver có thể lấy văn bản từ cửa sổ bật lên và chấp nhận hoặc loại bỏ các cảnh báo này
Xác nhậnMột hộp xác nhận tương tự như một cảnh báo, ngoại trừ người dùng cũng có thể chọn hủy tin nhắn. Xem một mẫu xác nhận Ví dụ này cũng cho thấy một cách tiếp cận khác để lưu trữ cảnh báo
________số 8
0 1Lời nhắcLời nhắc tương tự như hộp xác nhận, ngoại trừ chúng cũng bao gồm một kiểu nhập văn bản. Tương tự như làm việc với các phần tử biểu mẫu, bạn có thể sử dụng các phím gửi của WebDriver để điền vào phản hồi. Điều này sẽ thay thế hoàn toàn văn bản giữ chỗ. Nhấn nút hủy sẽ không gửi bất kỳ văn bản nào. Xem lời nhắc mẫu Selenium nào không thể xử lý?Không thể so sánh bitmap khi sử dụng Selenium WebDriver. Không thể tự động hóa Captcha bằng Selenium WebDriver. Chúng tôi không thể đọc mã vạch bằng Selenium WebDriver. Chúng tôi không thể tự động gửi OTP.
Làm cách nào để xử lý cảnh báo JavaScript trong Selenium?Các phương pháp sau hữu ích để xử lý các cảnh báo trong Selenium. . Loại bỏ vô hiệu (). Phương pháp này được sử dụng khi nhấp vào nút 'Hủy' trong hộp cảnh báo. . Không chấp nhận(). Phương pháp này được sử dụng để nhấp vào nút 'OK' của cảnh báo. . Chuỗi getText(). Phương pháp này được sử dụng để ghi lại thông báo cảnh báo WebDriver có thể xử lý JavaScript không?WebDriver cung cấp API để làm việc với ba loại thông báo bật lên gốc do JavaScript cung cấp .
Selenium nào tốt hơn với Java hoặc JavaScript?Có, Java nhanh hơn một chút - nhưng tốc độ thực thi không phù hợp với người mới bắt đầu hoặc để tự động hóa Selenium. Javascript là điều bắt buộc đối với nhà phát triển giao diện người dùng web - nhưng Javascript kỳ quặc, khó hiểu và ít dễ tha thứ hơn Python. |