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 | - | public static String currentBrowser = "chrome"; |
| 11 | + | |
| 12 | - | public static String currentDomain = "https://admin.quickblox.com"; |
| 12 | + | |
| 13 | - | public static String currentOs = "mac_os"; |
| 13 | + | |
| 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 | } |