Advertisement
Guest User

Untitled

a guest
Feb 21st, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import org.openqa.selenium.WebDriver;
  2. import org.openqa.selenium.chrome.ChromeDriver;
  3.  
  4. import java.awt.*;
  5. import java.nio.file.Paths;
  6. import java.util.concurrent.TimeUnit;
  7.  
  8.  
  9. public class WebDriverFactory {
  10.     private static final long IMPLICIT_WAIT_TIMEOUT = 5;
  11.  
  12.     public static String getDomain() {
  13.         return currentDomain;
  14.     }
  15.  
  16.     protected  WebDriver setChromeDriver(){
  17.         String pathToChromeDriver =           Paths.get("./src/test/resources/ChromeDriver/chromedriver_linux").toAbsolutePath().toString();
  18.        System.setProperty("webdriver.chrome.driver", pathToChromeDriver);
  19.         ChromeOptions options = new ChromeOptions();
  20.         options.addArguments("start-maximized");
  21.        WebDriver chromeDriver = new ChromeDriver(options);
  22.        return chromeDriver;
  23.    }
  24.  
  25.  
  26.     public static class DriverManager {
  27.  
  28.         public static ThreadLocal<WebDriver> ThreadDriver=new ThreadLocal<WebDriver>() ;
  29.  
  30.         public static String browserType;
  31.  
  32.  
  33.         public static WebDriver getDriver(){
  34.             WebDriver driver= DriverManager.ThreadDriver.get();
  35.             if (driver==null){
  36.  
  37.                     driver = setChromeDriver();
  38.                     ThreadDriver.set(driver);
  39.                     DriverManager.getDriver().manage().timeouts().implicitlyWait(IMPLICIT_WAIT_TIMEOUT, TimeUnit.SECONDS);
  40.  
  41.                     return driver;
  42.             }  
  43.  
  44.         public static void finishBrowser(){
  45.             getDriver().quit();
  46.             DriverManager.ThreadDriver.set(null);
  47.             DriverManager.ThreadDriver.remove();
  48.         }
  49.  
  50.     }
  51.  
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement