I have a class in my Selenium framework that is responsible for getting a fresh driver object and passing it to the tests for use.
But for some reason, it's returning a null error and I can't figure out why.
Here is the class:
DriverManager
private WebDriver driver;
public WebDriver getDriver() {
WebDriverFactory factory = new WebDriverFactory();
driver = factory.CreateBrowser(CHOSEN_BROWSER);
return driver;
}
My Factory class:
public WebDriver CreateBrowser(BrowserType browser)
{
switch(browser) {
case Chrome:
return createChromeDriver();
case Firefox:
return createFirefoxDiver();
case InternetExplorer:
return createInternetExplorerDriver();
default:
System.out.println("Invalid browser type");
return null;
}
}
My tests where I am creating an instance of the DriverManager:
BaseTest:
public DriverManager driverManager;
public WebDriver driver;
@Before
public void CreateDriver()
{
driver = driverManager.getDriver();
Pages.init(driver);
Logging.info("TEST STARTING: " + name.getMethodName());
}
But as soon as it hits the first line in the CreateDriver
method. I recieved a null pointer error and the tests fail with a NullPointerException.