Kishore Banala Kishore Banala - 1 month ago 20
Java Question

Find element by attribute

I am trying to find an element with Attribute. Well, I can find elements with Id, tagName, Xpath and all other predefined methods in Selenium. But, I am trying to write a method that specifically returns WebElement, given Attribute name and Value as input.

List<WebElement> elements = webDriver.findElements(By.tagName("Attribute Name"));
for(WebElement element : elements){
if(element.getText().equals("Value of Particular Attribute")){
return element;
return null;

Assuming XPath is not an option, is there any other better ways to do this?

Answer Source

You can easily get this task accomplished with CSS.

The formula is:


So if you have,

<a href=""></a>

You can find it using:


this works using any attribute possible.

This page here gives good information on how to formulate effective css selectors, and matching their attributes: