5.HandsOn Page Factory Method
5.HandsOn Page Factory Method
package TestCases;
import org.testng.annotations.Test;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.support.PageFactory;
import Pages.PageFactoryLogin;
import utility.BrowserFactory;
WebDriver driver;
@Test
public void checkValidUser(){
login_page.Login("Abarna6898","abcdefg");
System.out.println("Page Title : " + driver.getTitle());
driver.quit();
System.out.println("Browser Quit is successful");
}
package utility;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;
import org.openqa.selenium.phantomjs.PhantomJSDriver;
import org.openqa.selenium.phantomjs.PhantomJSDriverService;
import org.openqa.selenium.remote.DesiredCapabilities;
if (browserName.equalsIgnoreCase("chrome")){
System.setProperty("webdriver.chrome.driver",
"/root/selenium/chromedriver");
driver=new ChromeDriver();
}
else if (browserName.equalsIgnoreCase("HtmlUnitDriver")){
driver = new HtmlUnitDriver(true);
}
else if (browserName.equalsIgnoreCase("PhantomJS"))
{
DesiredCapabilities caps = new DesiredCapabilities();
caps.setJavascriptEnabled(true);
String [] phantomJsArgs = {"--ignore-ssl-errors=yes"};
caps.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS,
phantomJsArgs);
caps.setCapability(PhantomJSDriverService.PHANTOMJS_EXECU
TABLE_PATH_PROPERTY,
"/projects/challenge/phantomjs-2.1.1-linux-x86_64/bin/phantomjs");
driver = new PhantomJSDriver(caps);
System.out.println("PhantomJS Headless Driver launched");
}
driver.manage().window().maximize();
driver.get(url);
return driver;
}
}
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;
import org.openqa.selenium.support.How;
WebDriver driver;