Trong hướng dẫn này, chúng ta sẽ học cách xử lý DropDown trong Selenium và Multiple Select Operations.
Chọn lớp trong Selenium
Các Chọn Class trong Selenium là một phương pháp sử dụng để triển khai thẻ HTML SELECT. Thẻ chọn html cung cấp các phương thức trợ giúp để chọn và bỏ chọn các phần tử. Lớp Select là một lớp bình thường nên từ khóa New được sử dụng để tạo đối tượng của nó và nó chỉ định vị trí phần tử web.
Chọn Tùy chọn từ Hộp thả xuống
Sau đây là quy trình từng bước về cách chọn giá trị từ menu thả xuống trong Selenium:
Trước khi xử lý trình đơn thả xuống trong Selenium và kiểm soát các hộp thả xuống, chúng ta phải thực hiện hai điều sau:
- Nhập gói org.openqa.selenium.support.ui.Select
- Khởi tạo hộp thả xuống dưới dạng một đối tượng, Chọn trong Selenium WebDriver
Ví dụ: hãy truy cập trang Đăng ký của Mercury Tours (http://demo.guru99.com/test/newtours/register.php) và để ý hộp thả xuống "Quốc gia" ở đó.
Bước 1
Nhập gói "Chọn".
Bước 2
Khai báo phần tử thả xuống như một thể hiện của lớp Chọn. Trong ví dụ dưới đây, chúng tôi đặt tên cho phiên bản này là "drpCountry".
Bước 3
Bây giờ chúng ta có thể bắt đầu kiểm soát "drpCountry" bằng cách sử dụng bất kỳ phương pháp Chọn nào có sẵn để chọn menu thả xuống trong Selenium. Mã mẫu bên dưới sẽ chọn tùy chọn "ANTARCTICA."
Chọn các mục trong nhiều phần tử CHỌN
Chúng ta cũng có thể sử dụng phương thức selectByVibleText () để chọn nhiều tùy chọn trong một phần tử nhiều CHỌN. Ví dụ: chúng tôi sẽ lấy http://jsbin.com/osebed/2 làm URL cơ sở. Nó chứa một hộp thả xuống cho phép nhiều lựa chọn cùng một lúc.
Đoạn mã dưới đây sẽ chọn hai tùy chọn đầu tiên bằng phương thức selectByVibleText ().
Chọn phương pháp
Sau đây là các phương pháp phổ biến nhất được sử dụng trong danh sách thả xuống của Selenium.
phương pháp | Sự miêu tả |
---|---|
selectByVibleText () và deselectByVosystemText () Ví dụ: ![]() |
|
selectByValue () và deselectByValue () Ví dụ: ![]() |
![]() |
selectByIndex () và deselectByIndex () Ví dụ: ![]() |
|
isMultiple () Ví dụ: ![]() |
|
deselectAll () Ví dụ: ![]() |
|
Đây là mã hoàn chỉnh
gói hàng mới;nhập org.openqa.selenium.WebDriver;nhập org.openqa.selenium.firefox.FirefoxDriver;nhập org.openqa.selenium.support.ui.Select;nhập org.openqa.selenium.By;public class accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");String baseURL = "http://demo.guru99.com/test/newtours/register.php";Trình điều khiển WebDriver = mới FirefoxDriver ();driver.get (baseURL);Chọn drpCountry = new Chọn (driver.findElement (By.name ("country")));drpCountry.selectByVosystemText ("ANTARCTICA");// Chọn các mục trong nhiều phần tử CHỌNdriver.get ("http://jsbin.com/osebed/2");Chọn hoa quả = mới Chọn (driver.findElement (By.id ("hoa quả")));fruit.selectByVbrokenText ("Chuối");fruit.selectByIndex (1);}}
Tóm lược
Thành phần | Chỉ huy | Sự miêu tả |
---|---|---|
Thả cái hộp xuống | selectByVibleText () / deselectByVosystemText () | chọn / bỏ chọn một tùy chọn theo văn bản hiển thị của nó |
selectByValue () / deselectByValue () | chọn / bỏ chọn một tùy chọn theo giá trị của thuộc tính "giá trị" của nó | |
selectByIndex () / deselectByIndex () | chọn / bỏ chọn một tùy chọn theo chỉ mục của nó | |
isMultiple () | trả về TRUE nếu phần tử thả xuống cho phép nhiều lựa chọn cùng một lúc; FALSE nếu khác | |
bỏ chọn tất cả() | bỏ chọn tất cả các tùy chọn đã chọn trước đó |
Để kiểm soát các hộp thả xuống, trước tiên bạn phải nhập gói org.openqa.selenium.support.ui.Select và sau đó tạo một phiên bản Chọn.