1. 程式人生 > 實用技巧 >java+selenium+testng(二)開啟/關閉瀏覽器

java+selenium+testng(二)開啟/關閉瀏覽器

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瀏覽器========");