Drop down với Selenium
Việc xử lý drop down list , sẽ dựa vào các thuộc tính value, visible text và index.
selectByValue()
Đi vào vấn đề chính là việc xử lý drop down list trong selenium. Như đoạn HTLM ở trên, thì ta có value là một thuộc tính trong thẻ option đó là:
Command:
selectByVisibleText()
Với Visible text – thì đây chính là text hiển thị trên trang web mà ta chọn từ drop down:
Command:
selectByIndex()
Còn với index thì có thể hiểu đơn giản như là ta có một mảng các option, được đánh số từ 0 cho đến hết, như ví dụ trên thì từ 0 đến 7. Index 1 tương ứng với Sunday, lần lượt index 2 tương ứng với Monday, và index 7 tương ứng với Saturday.
Command:
Giải thích một số hàm thường sử dụng với drop down list:
** selectByValue(String arg0) || Chọn option có thuộc tính value tương ứng với tham số truyền vào. Tham số truyền vào phải có giá trị tương ứng với giá trị của thuộc tính trong option được chọn/bỏ chọn. Và không phải lúc nào value của option cũng giống với visible text, nên là phải lưu ý tránh nhầm lẫn nha.
** selectByVisibleText(String arg0) || Chọn option có text hiển thị tương ứng với tham số truyền vào. Tham số truyền vào này phải giống 100% với text hiển thị trên drop down.
** selectByIndex(int arg0) || Chọn option theo index của option trong drop down list. Tham số truyền vào là index của option muốn select.
Bonus thêm một số hàm có thể gặp khi làm việc với drop down list:
** isMultiple() || Hàm này để kiểm tra xem drop down list đó có thể chọn được nhiều giá trị hay không, nếu có hàm sẽ trả về giá trị TRUE, ngược lại sẽ trả về FALSE, và nó không yêu cầu truyền tham số đầu vào.
** deselectAll() || Hàm này được sử dụng để hủy tất cả các option đã được select, và chỉ sử dụng đối với những drop down list cho phép chọn nhiều option.
Full code