WebDriver 集成测试

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_36511401/article/details/102463411

1、先下载一个谷歌浏览器,再在地址栏上面输入chrome://version,以便查看浏览器的版本。

2、然后在http://chromedriver.storage.googleapis.com/index.html下载对应的chromedriver版本。

3、pom.xml文件引用依赖包,经测试,由于依赖包中的com.google.guava版本的问题,会导致出错,所以要将原有的排除掉,使用22.0的版本。

4、主要代码。

ChromeOptions options = new ChromeOptions();
System.setProperty("webdriver.chrome.driver", "C:\\D5\\project-server-jar-plugin-zip\\chromedriver_win32\\chromedriver.exe");//chromedriver位置
options.setBinary("C:\\Users\\Administrator\\AppData\\Local\\Google\\Chrome\\Application\\chrome.exe");//chrome位置
Map<String, Object> prefs = new HashMap<>();
prefs.put("profile.managed_default_content_settings.images", 2);//禁止下载加载图片
options.setExperimentalOption("prefs", prefs);
WebDriver driver = new ChromeDriver(options);
driver.get("http://www.baidu.com");
Thread.sleep(3000)
driver.quit();

5、会自动打开谷歌浏览器,并调转到百度界面,如果要自动关闭的话,要加上driver.quit();就可以了。但是,如果你在代码里面经常开启和关闭chromedriver的话,有时候会出现chromedriver不会被关闭的情况,或者进程残留在后台中情况也可能发生,为了避免这种情况,可以的方法,进行打开和关闭的处理。

    //创建ChromeDriverService
    ChromeDriverService service = new ChromeDriverService.Builder()
            .usingDriverExecutable(new File(PropertyUtils.getString("chrome.driver.path")))
            .usingAnyFreePort()
            .build();
    service.start();  
    //配置  
    ChromeOptions options = new ChromeOptions();
    Map<String, Object> prefs = new HashMap<>();
    prefs.put("profile.managed_default_content_settings.images", 2);//禁止下载加载图片
    options.setExperimentalOption("prefs", prefs);   
    //创建WebDriver
    WebDriver driver = new RemoteWebDriver(service.getUrl(), options);
    driver.manage().timeouts().pageLoadTimeout(driver_manage_timeouts,TimeUnit.SECONDS);driver.get("http://www.baidu.com");
    Thread.sleep(3000)
    //关闭
    driver.quit();
    server.stop();
扫描二维码关注公众号,回复: 7565152 查看本文章

猜你喜欢

转载自blog.csdn.net/qq_36511401/article/details/102463411