zoukankan      html  css  js  c++  java
  • 【Selenium专题】WebDriver启动Chrome浏览器(二)

    官方API

    Constructor Summary

    ChromeDriver()

    Creates a new ChromeDriver using the default server configuration.

    ChromeDriver(ChromeDriverService service)

    Creates a new ChromeDriver instance.The service will be started along with the driver, and shutdown upon calling RemoteWebDriver.quit().

    ChromeDriver(ChromeOptions options)

    Creates a new ChromeDriver instance with the specified options.

    ChromeDriver(ChromeDriverService service, ChromeOptions options)

    Creates a new ChromeDriver instance with the specified options. The service will be started along with the driver, and shutdown upon calling RemoteWebDriver.quit().

    ChromeDriver(Capabilities capabilities)

    Deprecated. Use ChromeDriver(ChromeOptions) instead.

    ChromeDriver(ChromeDriverService service, Capabilities capabilities)

    Deprecated. Use ChromeDriver(ChromeDriverService, ChromeOptions)

    注:chrome浏览器实例化现今只适用前四种,后两种已作废不用。

    实例代码

    • 按照默认配置启动chrome 
    public static void main(String[] args) {
            String chromebin = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe";//chrome启动文件路径
            String chromedriver = "E:/**/**/**/chromedriver.exe";//chromedriver文件路径
        
            /* 设定 chrome启动文件的位置, 若未设定则取默认安装目录的 chrome */
            System.setProperty("webdriver.chrome.bin", chromebin);
            /* 设定 chrome webdirver 的位置 ,若未设定则从path变量读取*/
            System.setProperty("webdriver.chrome.driver", chromedriver);
            
            WebDriver driver = new ChromeDriver();
            driver.get("http://www.baidu.com");
            driver.close();//关闭浏览器
    driver.quit();//退出浏览器
    }
    • 使用服务管理chrome
    public static void main(String[] args) {
            String chromedriver = "E:/**/**/**/chromedriver.exe";
        
            ChromeDriverService service = new ChromeDriverService.Builder()
                                            .usingDriverExecutable(new File(chromedriver))
                                            .usingAnyFreePort().build();    
            WebDriver driver = new ChromeDriver(service);
            driver.get("http://www.baidu.com");
            driver.quit();
        }
    • 自定义配置启动chrome 
    import java.io.File;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.chrome.ChromeOptions;
    
    public class test {
        public static void main(String[] args) {
            String chromebin = "C:/Program Files (x86)/Google/Chrome/Application/chrome.exe";
            String chromedriver = "E:/**/**/**/chromedriver.exe";
        
            /* 设定 chrome启动文件的位置, 若未设定则取默认安装目录的 chrome */
            System.setProperty("webdriver.chrome.bin", chromebin);
            /* 设定 chrome webdirver 的位置 ,若未设定则从path变量读取*/
            System.setProperty("webdriver.chrome.driver", chromedriver);
            
            WebDriver driver = new ChromeDriver(setChromeOptions());
            driver.get("http://www.baidu.com");
    driver.close();
    //关闭浏览器
    driver.quit();//退出浏览器
    }
    /**
         * 设置 Chrome 浏览器的启动配置
         * @return ChromeOptions Chrome 参数设置
         */
        public static ChromeOptions setChromeOptions(){
            ChromeOptions options = new ChromeOptions();
            /*
             * 设置参数
             * --start-maximized 浏览器最大化
             * test-type 忽略认证错误警示--ignore-certificate-errors
             * */
            options.addArguments("--start-maximized");
            options.addArguments("test-type");
            
            /*
             * 加载插件
             * files\youtube.crx 代表查件文件路径
             * */
             File file = new File ("files\youtube.crx");
             options.addExtensions(file);
    
            return options;
        }
    }
    • 自定义配置,使用服务启动chrome 
    import java.io.File;
    
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.chrome.ChromeDriverService;
    import org.openqa.selenium.chrome.ChromeOptions;
    
    public class test {
    
        public static void main(String[] args) {
            String chromedriver = "E:/**/**/**/chromedriver.exe";
        
            ChromeDriverService service = new ChromeDriverService.Builder()
                                            .usingDriverExecutable(new File(chromedriver))
                                            .usingAnyFreePort().build(); 
            WebDriver driver = new ChromeDriver(service,setChromeOptions());
            driver.get("http://www.baidu.com");
            driver.quit();
        }
        
        /**
         * 设置 Chrome 浏览器的启动配置
         * @return ChromeOptions Chrome 参数设置
         */
        public static ChromeOptions setChromeOptions(){
            ChromeOptions options = new ChromeOptions();
            /*
             * 设置参数
             * --start-maximized 浏览器最大化
             * test-type 忽略认证错误警示--ignore-certificate-errors
             * */
            options.addArguments("--start-maximized");
            options.addArguments("test-type");
            
            /*
             * 加载插件
             * files\youtube.crx 代表查件文件路径
             * */
             File file = new File ("files\youtube.crx");
             options.addExtensions(file);
    
            return options;
        }    
    }

    注意:为避免路径问题,chrome浏览器建议安装在默认路径下

  • 相关阅读:
    git知识总结-3.gitignore文件说明
    git知识总结-2.git基本操作之原理说明
    git知识总结-2.git基本操作之操作汇总
    久视伤血;久卧伤气;久坐伤肉;久立伤骨;久行伤筋;久听伤神;久闻伤心;久思伤眠
    不同的「火」在舌頭上的表現也不一樣
    手指甲半月痕 血象和微量元素检查分析是否有贫血
    五脏与五声 五脏排毒法(五声功)
    SSD硬盘 全盘安全擦除
    滋补药早晚饭前半小时空腹服用效果最佳,其他未注明者饭前半小时或饭后一小时
    身体检查 生化全套 血常规 微量元素
  • 原文地址:https://www.cnblogs.com/sylvia-liu/p/4582768.html
Copyright © 2011-2022 走看看