how does selenium driver work code example
Example 1: what is webdriver in selenium
WebDriver:
WebDriver object represents the browser in Selenium.
Using this object you can control the Web browser.
It is an interface of the org.openqa.selenium.* package.
Upon instantiating the implementations of this class
the browser will be launched.
FirefoxDrive, ChromeDriver,
InternetExplorerDriver, SafariDriver, OperaDriver,
HtmlUnitDriver, RemoteWebDriver are few
implementations of the WebDriver Interface.
Example 2: driver object in selenium
Driver class:
-Driver class is public, has a private
constructor and private WebDriver object
which named driver, so that no object
can be created outside the class.
It is also an example for "singleton design pattern".
-Webdriver driver is private and static.
Static so it is only a single copy and
shared among the class. It is private
so that it is encapsulated. It has a
public getter method which returns driver object
(browser) based on the condition (if driver==null)
as a result of launching a browser based on the
info retrieved from .properties file using
Configuration class get method. No setter method,
so it can not be modified anyway
Driver class is singleton
To create a singleton class, we need to
1.Declare constructor of class as private
so nobody can instantiate a WebDriver
object of this class from out of it.
2.Declare a private static WebDriver object.
Static is needed to make it available globally.
3.Declare a public static method(getter)
with return type as object of class which
should check if class is already instantiated once.