- Selenium Testing Tools Cookbook(Second Edition)
- Unmesh Gundecha
- 238字
- 2021-07-09 21:14:19
Finding elements using the findElements method
Selenium WebDriver provides the findElements()
method, using which we can find more than one element matching the specified search criteria. This method is useful when we want to work with a group of similar elements. For example, we can get all the links displayed on a page, or get all rows from a table, and so on.
In this recipe, we will get all the links and print their targets by using the findElements()
method.
How to do it...
Let's create a test that will get all the links from a page, verify the count of links, and print a target for each link, as follows:
@Test public void testFindElements() { //Get all the links displayed on Page List<WebElement> links = driver.findElements(By.tagName("a")); //Verify there are four links displayed on the page assertEquals(4, links.size()); //Iterate though the list of links and print //target for each link for(WebElement link : links) { System.out.println(link.getAttribute("href")); } }
How it works...
The findElements()
method returns all the elements matching the search criteria as a list of WebElements
.
List<WebElement> links = driver.findElements(By.tagName("a"));
The size()
method of the List
will tell us how many elements are there in the list:
assertEquals(4, links.size());
We can iterate by using this list in the following way, getting a link and printing its target value:
for(WebElement link : links) { System.out.println(link.getAttribute("href")); }
See also
- The Finding an element using the findElement method recipe
- Manga Studio Ex 5 Cookbook
- 深入淺出Prometheus:原理、應用、源碼與拓展詳解
- Mastering QGIS
- Java編程指南:基礎知識、類庫應用及案例設計
- Python金融數據分析
- Reactive Programming With Java 9
- Nginx Essentials
- Oracle從入門到精通(第5版)
- C# 8.0核心技術指南(原書第8版)
- 硅谷Python工程師面試指南:數據結構、算法與系統設計
- 移動互聯網軟件開發實驗指導
- Swift 4從零到精通iOS開發
- Unity 2017 Game AI Programming(Third Edition)
- Visual Basic 程序設計實踐教程
- VMware vRealize Orchestrator Essentials