一.概述
大家都知道selenium支持不同的瀏覽器,而webdriver啟動項目時需要啟動瀏覽器的driver,於是乎配置不同的瀏覽器來啟動不同的driver勢在必行了,
下面請看代碼;
二.編寫一個初始化selenium測試框架driver類
public class SeleniumDriver { private Log log=new Log(this.getClass()); private WebDriver driver; public WebDriver getDriver() { return driver; } public SeleniumDriver(){ this.initialDriver(); } public void initialDriver(){ if("firefox".equals(Config.browser)){ ProfilesIni allProfiles = new ProfilesIni(); FirefoxProfile profile = allProfiles.getProfile("default"); System.setProperty("webdriver.firefox.bin", "D:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"); driver = new FirefoxDriver(); }else if("ie".equals(Config.browser)){ System.setProperty("webdriver.ie.driver", "files/IEDriverServer64.exe"); DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer(); capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true); capabilities.setCapability("ignoreProtectedModeSettings",true); driver = new InternetExplorerDriver(capabilities); }else if("chrome".equals(Config.browser)){ System.setProperty("webdriver.chrome.driver", "files/chromedriver.exe"); ChromeOptions options = new ChromeOptions(); options.addArguments("--test-type"); driver = new ChromeDriver(options); }else{ log.info(Config.browser+" 的值不正確,請檢查!"); throw new DefinedException(Config.browser+" 的值不正確,請檢查!"); } }
三.關於Config類的情況
Config是一個加載了瀏覽器信息的靜態類,通過該類可以讀取到瀏覽器的配置信息。。。。。。。哈哈,對於上面的代碼,你是否豁然開朗了許多呢!!!!!!