Package org.openqa.selenium
Class By
java.lang.Object
org.openqa.selenium.By
- Direct Known Subclasses:
By.ByClassName
,By.ByCssSelector
,By.ById
,By.ByLinkText
,By.ByName
,By.ByPartialLinkText
,By.ByTagName
,By.ByXPath
,ByAll
,ByChained
,ByIdOrName
,RelativeLocator.RelativeBy
Mechanism used to locate elements within a document. In order to create your own locating
mechanisms, it is possible to subclass this class and override the protected methods as required,
though it is expected that all subclasses rely on the basic finding mechanisms provided through
static methods of this class:
public WebElement findElement(WebDriver driver) {
WebElement element = driver.findElement(By.id(getSelector()));
if (element == null)
element = driver.findElement(By.name(getSelector());
return element;
}
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
static class
static class
static class
static class
static class
static class
static interface
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic By
Find elements based on the value of the "class" attribute.static By
cssSelector
(String cssSelector) Find elements via the driver's underlying W3C Selector engine.boolean
findElement
(SearchContext context) Find a single element.abstract List<WebElement>
findElements
(SearchContext context) Find many elements.protected JavascriptExecutor
getJavascriptExecutor
(SearchContext context) protected WebDriver
getWebDriver
(SearchContext context) int
hashCode()
static By
static By
static By
static By
partialLinkText
(String partialLinkText) static By
toString()
static By
-
Constructor Details
-
By
public By()
-
-
Method Details
-
id
- Parameters:
id
- The value of the "id" attribute to search for.- Returns:
- A By which locates elements by the value of the "id" attribute.
-
linkText
- Parameters:
linkText
- The exact text to match against.- Returns:
- A By which locates A elements by the exact text it displays.
-
partialLinkText
- Parameters:
partialLinkText
- The partial text to match against- Returns:
- a By which locates elements that contain the given link text.
-
name
- Parameters:
name
- The value of the "name" attribute to search for.- Returns:
- A By which locates elements by the value of the "name" attribute.
-
tagName
- Parameters:
tagName
- The element's tag name.- Returns:
- A By which locates elements by their tag name.
-
xpath
- Parameters:
xpathExpression
- The XPath to use.- Returns:
- A By which locates elements via XPath.
-
className
Find elements based on the value of the "class" attribute. Only one class name should be used. If an element has multiple classes, please usecssSelector(String)
.- Parameters:
className
- The value of the "class" attribute to search for.- Returns:
- A By which locates elements by the value of the "class" attribute.
-
cssSelector
Find elements via the driver's underlying W3C Selector engine. If the browser does not implement the Selector API, the best effort is made to emulate the API. In this case, we strive for at least CSS2 support, but offer no guarantees.- Parameters:
cssSelector
- CSS expression.- Returns:
- A By which locates elements by CSS.
-
findElement
Find a single element. Override this method if necessary.- Parameters:
context
- A context to use to find the element.- Returns:
- The WebElement that matches the selector.
-
findElements
Find many elements.- Parameters:
context
- A context to use to find the elements.- Returns:
- A list of WebElements matching the selector.
-
getWebDriver
-
getJavascriptExecutor
-
equals
-
hashCode
public int hashCode() -
toString
-