How to Select li Element in Selenium Java
Selenium is an
open-source web-based automation
tool that is implemented using a web driver. We will be using geckodriver because Selenium 3
enables geckodriver as the default WebDriver implementation for
Firefox.
Pre-requisites:
- geckodriver.exe
- maven dependency selenium
<dependency>
<groupid>org.seleniumhq.selenium</groupid>
<artifactid>selenium-java</artifactid>
<version>4.1.1</version>
</dependency>Steps:
it's a 4 steps process:
-
Set
webdriver.gecko.driverand its'pathas a system property. - Set the firefox diver and browse to the website.
-
Get list items as Web elements using
webdriver.findElements()function and CSS selector.
- Iterate over all these elements to get text and HTML.
Let’s see all the above steps in the code. We will use
Webelment.getAttribute(String name) function to get the data.
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Selectli {
public static String GECKODRIVER_PATH = "F:\\WORK\\SeleniumShortTasks\\Select-li\\src\\main\\resources\\geckodriver.exe";
public static void main(String[] args) {
//set firefox webdriver
System.setProperty("webdriver.gecko.driver", GECKODRIVER_PATH);
WebDriver driver = new FirefoxDriver();
//get the firefox browser & Browse the Website
String siteLink = "https://en.wikipedia.org/wiki/List_of_presidents_of_Pakistan";
driver.get(siteLink);
//make li available
driver.findElement(By.cssSelector("span.mw-collapsible-toggle.mw-collapsible-toggle-default.mw-collapsible-toggle-collapsed")).click();
//Get the li content Div
WebElement liElements = driver.findElement(By.cssSelector("div.sidebar-list-content.mw-collapsible-content"));
//get all li items
List<WebElement> ListItems = liElements.findElements(By.tagName("li"));
//terate over each li to get text and innerHTML
for (WebElement e : ListItems) {
System.out.println("List Item Text : " + e.getText());
System.out.println("List Item HTML : " + e.getAttribute("innerHTML") + "\n");
}
}
}
Output:
All resources used in this tutorial are attached:
- source code
- geckdriver.exe

Comments
Post a Comment