Class WebDriverFacade

  • All Implemented Interfaces:
    ConfigurableTimeouts, org.openqa.selenium.HasCapabilities, org.openqa.selenium.interactions.HasInputDevices, org.openqa.selenium.interactions.Interactive, org.openqa.selenium.JavascriptExecutor, org.openqa.selenium.SearchContext, org.openqa.selenium.TakesScreenshot, org.openqa.selenium.WebDriver

    public class WebDriverFacade
    extends Object
    implements org.openqa.selenium.WebDriver, org.openqa.selenium.TakesScreenshot, org.openqa.selenium.interactions.HasInputDevices, org.openqa.selenium.JavascriptExecutor, org.openqa.selenium.HasCapabilities, ConfigurableTimeouts, org.openqa.selenium.interactions.Interactive
    A proxy class for webdriver instances, designed to prevent the browser being opened unnecessarily.
    • Field Detail

      • proxiedWebDriver

        protected org.openqa.selenium.WebDriver proxiedWebDriver
    • Constructor Detail

      • WebDriverFacade

        public WebDriverFacade​(Class<? extends org.openqa.selenium.WebDriver> driverClass,
                               WebDriverFactory webDriverFactory)
      • WebDriverFacade

        public WebDriverFacade​(Class<? extends org.openqa.selenium.WebDriver> driverClass,
                               WebDriverFactory webDriverFactory,
                               org.openqa.selenium.WebDriver proxiedWebDriver,
                               Duration implicitTimeout)
    • Method Detail

      • getDriverClass

        public Class<? extends org.openqa.selenium.WebDriver> getDriverClass()
      • getProxiedDriver

        public org.openqa.selenium.WebDriver getProxiedDriver()
      • isEnabled

        public boolean isEnabled()
      • reset

        public void reset()
      • getScreenshotAs

        public <X> X getScreenshotAs​(org.openqa.selenium.OutputType<X> target)
        Specified by:
        getScreenshotAs in interface org.openqa.selenium.TakesScreenshot
      • get

        public void get​(String url)
        Specified by:
        get in interface org.openqa.selenium.WebDriver
      • getCurrentUrl

        public String getCurrentUrl()
        Specified by:
        getCurrentUrl in interface org.openqa.selenium.WebDriver
      • getTitle

        public String getTitle()
        Specified by:
        getTitle in interface org.openqa.selenium.WebDriver
      • findElements

        public List<org.openqa.selenium.WebElement> findElements​(org.openqa.selenium.By by)
        Specified by:
        findElements in interface org.openqa.selenium.SearchContext
        Specified by:
        findElements in interface org.openqa.selenium.WebDriver
      • findElement

        public org.openqa.selenium.WebElement findElement​(org.openqa.selenium.By by)
        Specified by:
        findElement in interface org.openqa.selenium.SearchContext
        Specified by:
        findElement in interface org.openqa.selenium.WebDriver
      • getPageSource

        public String getPageSource()
        Specified by:
        getPageSource in interface org.openqa.selenium.WebDriver
      • getDriverInstance

        protected org.openqa.selenium.WebDriver getDriverInstance()
      • close

        public void close()
        Specified by:
        close in interface org.openqa.selenium.WebDriver
      • quit

        public void quit()
        Specified by:
        quit in interface org.openqa.selenium.WebDriver
      • proxyInstanciated

        protected boolean proxyInstanciated()
      • getWindowHandles

        public Set<String> getWindowHandles()
        Specified by:
        getWindowHandles in interface org.openqa.selenium.WebDriver
      • getWindowHandle

        public String getWindowHandle()
        Specified by:
        getWindowHandle in interface org.openqa.selenium.WebDriver
      • switchTo

        public org.openqa.selenium.WebDriver.TargetLocator switchTo()
        Specified by:
        switchTo in interface org.openqa.selenium.WebDriver
      • navigate

        public org.openqa.selenium.WebDriver.Navigation navigate()
        Specified by:
        navigate in interface org.openqa.selenium.WebDriver
      • manage

        public org.openqa.selenium.WebDriver.Options manage()
        Specified by:
        manage in interface org.openqa.selenium.WebDriver
      • canTakeScreenshots

        public boolean canTakeScreenshots()
      • isInstantiated

        public boolean isInstantiated()
      • getKeyboard

        public org.openqa.selenium.interactions.Keyboard getKeyboard()
        Specified by:
        getKeyboard in interface org.openqa.selenium.interactions.HasInputDevices
      • getMouse

        public org.openqa.selenium.interactions.Mouse getMouse()
        Specified by:
        getMouse in interface org.openqa.selenium.interactions.HasInputDevices
      • executeScript

        public Object executeScript​(String script,
                                    Object... parameters)
        Specified by:
        executeScript in interface org.openqa.selenium.JavascriptExecutor
      • executeAsyncScript

        public Object executeAsyncScript​(String script,
                                         Object... parameters)
        Specified by:
        executeAsyncScript in interface org.openqa.selenium.JavascriptExecutor
      • getCapabilities

        public org.openqa.selenium.Capabilities getCapabilities()
        Specified by:
        getCapabilities in interface org.openqa.selenium.HasCapabilities
      • getDriverName

        public String getDriverName()
      • isAProxyFor

        public boolean isAProxyFor​(Class<? extends org.openqa.selenium.WebDriver> somedriverClass)
      • isDisabled

        public boolean isDisabled()
      • perform

        public void perform​(Collection<org.openqa.selenium.interactions.Sequence> actions)
        Specified by:
        perform in interface org.openqa.selenium.interactions.Interactive
      • resetInputState

        public void resetInputState()
        Specified by:
        resetInputState in interface org.openqa.selenium.interactions.Interactive