View difference between Paste ID: bbNp6SzC and NRYZg6cx
SHOW: | | - or go back to the newest paste.
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;
30+
31
            WebDriver driver= DriverManager.ThreadDriver.get();
32
            if (driver==null){
33
34
                    driver = setChromeDriver();
35
                    ThreadDriver.set(driver);
36
                    DriverManager.getDriver().manage().timeouts().implicitlyWait(IMPLICIT_WAIT_TIMEOUT, TimeUnit.SECONDS);
37
38
            		return driver;
39
        	}	
40
41
        public static void finishBrowser(){
42
            getDriver().quit();
43
            DriverManager.ThreadDriver.set(null);
44
            DriverManager.ThreadDriver.remove();
45
        }
46
47
    }
48
49
}