So sánh findElement() với findElements()
Trong Selenium Webdriver có 2 phương thức để tìm webelements, đó là findElement() với findElements(). Trong bài này, chúng ta sẽ tìm hiểu sự khác nhau giữa 2 phương thức và cách sử dụng chúng cho hiệu quả.
# | findElement | findElements |
Định nghĩa | findElement() được dùng để tìm một webelement trên webpage đúng với locator | findElements() được dùng để tìm một List các webelements đúng với locator |
Cú pháp | WebElement element = driver.findElement(By locator); | List<WebElement> elements = driver.findElements(By locator); |
Multiple matches | Trong trường hợp nhiều elements có cùng locator thì findElement sẽ trả về element đầu tiên tìm được | Trong trường hợp tìm được nhiều element có cùng locator thì findElements sẽ trả về một list các elements. Để tương tác thì chúng ta phải thông qua index. Ví dụ: elements.get(0).click(); => click vào element đầu tiên trong list element vừa tìm được
|
Không có element nào được tìm thấy | findElement() throw exception NoSuchElementException | findElements() sẽ có list với size là 0 được trả về thay vì exception. |