java+selenium+testng(二)開啟/關閉瀏覽器
阿新 • • 發佈:2020-07-22
1、操作瀏覽器,需要先下載瀏覽器驅動
chrome瀏覽器驅動下載地址:http://npm.taobao.org/mirrors/chromedriver/
firefox瀏覽器驅動下載地址:https://github.com/mozilla/geckodriver/releases
下載完成後可以放到 src/test/resources 目錄下
2、匯入依賴
<dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.141.59</version> </dependency>
3、開啟瀏覽器的程式碼(BrowserUtil)
/**
* 開啟瀏覽器
* @param browserType 開啟瀏覽器的型別
*/
public static void openBrowser(String browserType){
browserName = browserType;
if(browserType != ""){
if(browserType.equals("chrome")){
System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");
WebDriver driver = new ChromeDriver();
setDriver(driver);
logger.info("========開啟chrome瀏覽器========");
}else if(browserType.equals("firefox")){
//程式碼省略
logger.info("========開啟firefox瀏覽器========");
}else if(browserType.equals("ie")){
//程式碼省略
logger.info("========開啟ie瀏覽器========");
}
}
}
4、關閉瀏覽器程式碼(BrowserUtil)
/**
* 關閉瀏覽器
*/
public static void closeBrowser() {
logger.info("========關閉瀏覽器========");
getDriver().quit();
}
PS,經濟實用的無頭瀏覽器模式寫法
(在沒有桌面GUI的情況下,可以使用無頭瀏覽器模式。我個人在除錯程式碼的時候,不喜歡在本地開啟太多頁面,也直接使用了本地瀏覽器),下面介紹下無頭瀏覽器模式的寫法,以chrome瀏覽器為例
System.setProperty("webdriver.chrome.driver", "src/test/resources/chromedriver.exe");
//支援chrome無頭瀏覽器模式
ChromeOptions chromeOptions = new ChromeOptions();
chromeOptions.addArguments("headless");
WebDriver driver = new ChromeDriver(chromeOptions);
setDriver(driver);
logger.info("========開啟chrome瀏覽器========");