Blog

Finding Elements by XPATH and Using CSS - SELENIUM

Finding Elements by XPATH

1. Finding elements by XPATH and ID
2. Finding elements by XPATH and NAME
3. Finding elements by XPATH and LINK
4. Finding elements by XPATH and Text

Finding elements by XPATH and ID:-

Type  //form[@id=’search_mini_form’]/div/input

Accelerate your career with Selenium Training and become expertise in Selenium.

Finding elements by XPATH and NAME:-

Type    //input[@name=’q’]

Finding elements by XPATH and LINK:-

Click   //a[@id=’navigation-top-cat-label-707′]
Click   //ul[@id=’nav’]/li[3]/a
Click   //a[@href=’http://www.rightstart.com/search/result/?ocat=707′]

Related Page: Synchronisation Commands - SELENIUM

Partial Match on Attribute Content:-

There are times where only part of the ID is dynamic. For example, if you wanted to access the element that has the text “This element has an ID that changes every time the page is loaded” in it, you will use //div[contains(@id,’time_’)]. This is due to the first part of the ID always being static. The locator could also use starts-with instead of contains to make the XPath query stricter in what is returned.
We can use two methods to find the elements with text

  • Contains
  • Starts-with

Syntax:- //element[text()=’inner text’].
Example for Starts with: for link Booster seats
//a[starts-with(text(),’Boost’)]
Example for contains: for link Car seat bases
//a[contains(text(), ‘Seat’)]
Finding elements by the text they contain can be quite useful when working with web pages that have been created dynamically.

Checkout Selenium Interview Questions

Contains:-

If we know part of the text then we have to use this command.
Syntax: //element[contains(text(),’inner text’)]

For the above example the command is :
//a[contains(text(),’Car Seat Bases’)]

Related Page: Learn Java Basics For Selenium

Starts with:-

Syntax:- //element[starts with(text(),’inner text’)]
If we know the starting of the text then we have to use this command.

For the above example the command is:
//a[starts-with(text(),’Boost’)]

Checkout Selenium Tutorial

Finding Elements by using CSS

locators are a way to tell selenium which specific element we want it to act on Why CSS

  • Because they are faster
  • Because they are more readable

MORE READABLE:-

//input[@id=”myId”] vs css=input#myId
//input[@class=”myClass”] vs  css=input.myClass
//input[@name=”myName”] vs  css=input[name=myName] //*[@id=”myId”] vs css=#myId
//table[@id=”myId”]//tr[@class=”myClass”]//td[3] vs css=table#myId tr.myClass td:nth(3)

Explore Selenium Sample Resumes! Download & Edit, Get Noticed by Top Employers!Download Now!

 


RELATED COURSES

Get Updates on Tech posts, Interview & Certification questions and training schedules