What is Element locator ?
It is an address that identifies a web element uniquely within the page.
Selenium supports 8 element locators to locate element in web page.
idnameclassNametagNamelinkTextpartialLinkTextcssSelectorxPath
Why we need to use different locators for elements ?
1. Because developer may not provide all locators for every element.
2. Some locators are not applicable for every elements.
3. Some locators may be duplicated
id
driver.findElement(By.id("button1"));
name
driver.findElement(By.name("country"));
className
driver.findElement(By.className("email"));
tagName
driver.findElement(By.tagName("forgot-password"));
linkText
driver.findElement(By.linkText("org.openqa.selenium.chrome"));
partialLinkText
driver.findElement(By.partialLinkText("inbox"));
cssSelector
driver.findElements(By.cssSelector("input[type='checkbox']")
xPath
driver.findElements(By.xpath("div[@class='mouse-hover-content']//a"));