Class DefaultElementLocator

java.lang.Object
org.openqa.selenium.support.pagefactory.DefaultElementLocator
All Implemented Interfaces:
ElementLocator
Direct Known Subclasses:
AjaxElementLocator

public class DefaultElementLocator extends Object implements ElementLocator
The default element locator, which will lazily locate an element or an element list on a page. This class is designed for use with the PageFactory and understands the annotations FindBy and CacheLookup.
  • Constructor Details

    • DefaultElementLocator

      public DefaultElementLocator(org.openqa.selenium.SearchContext searchContext, Field field)
      Creates a new element locator.
      Parameters:
      searchContext - The context to use when finding the element
      field - The field on the Page Object that will hold the located value
    • DefaultElementLocator

      public DefaultElementLocator(org.openqa.selenium.SearchContext searchContext, AbstractAnnotations annotations)
      Use this constructor in order to process custom annotations.
      Parameters:
      searchContext - The context to use when finding the element
      annotations - AbstractAnnotations class implementation
  • Method Details

    • findElement

      public org.openqa.selenium.WebElement findElement()
      Find the element.
      Specified by:
      findElement in interface ElementLocator
    • findElements

      public List<org.openqa.selenium.WebElement> findElements()
      Find the element list.
      Specified by:
      findElements in interface ElementLocator
    • shouldCache

      protected boolean shouldCache()
      Returns whether the element should be cached.
      Returns:
      true if the element should be cached
    • toString

      public String toString()
      Overrides:
      toString in class Object