0


ChromeDriverService

启动ChromeDriver

普通启动方式

System.setProperty("webdriver.chrome.driver","Driver路径");WebDriver driver =newChromeDriver();
driver.get("http://www.baidu.com/");

ChromeDriverService

执行以上代码你会发现ChromeDriver仅是在创建是启动,调用quit时关闭浏览器。
ChromeDriver是轻量级的服务若在一个比较大的测试套件中频繁的启动关闭,会增加一个比较明显的延时导致浏览器进程不被关闭的情况发生,为了避免这一状况我们可以通过ChromeDriverService来控制ChromeDriver进程的生死,达到用完就关闭的效果避免进程占用情况出现(Running the server in a child process)。

ChromeDriverService service =newChromeDriverService.Builder().usingChromeDriverExecutable(newFile("Driver路径")).usingAnyFreePort().build();
service.start();
driver =newChromeDriver();
driver.get("http://www.baidu.com");
driver.quit();// 关闭 ChromeDriver 接口
service.stop();

或者

publicstaticvoidmain(String[] args)throwsIOException{// 创建一个 ChromeDriver 的接口,用于连接 ChromeChromeDriverService service =newChromeDriverService.Builder().usingDriverExecutable(newFile("Driver路径")).usingAnyFreePort().build();
service.start();// 创建一个 Chrome 的浏览器实例WebDriver driver =newRemoteWebDriver(service.getUrl());// 让浏览器访问 Baidu
driver.get("http://www.baidu.com");// 用下面代码也可以实现//driver.navigate().to("http://www.baidu.com");// 获取 网页的 titleSystem.out.println(" Page title is: "+driver.getTitle());// 通过 id 找到 input 的 DOMWebElement element =driver.findElement(By.id("kw1"));// 输入关键字
element.sendKeys("zTree");// 提交 input 所在的 form
element.submit();// 通过判断 title 内容等待搜索页面加载完毕,间隔秒(newWebDriverWait(driver,10)).until(newExpectedCondition(){
publicBoolean apply(WebDriver d){
returnd.getTitle().toLowerCase().startsWith("ztree");}});// 显示搜索结果页面的 titleSystem.out.println(" Page title is: "+driver.getTitle());// 关闭浏览器
driver.quit();// 关闭 ChromeDriver 接口
service.stop();}
标签: selenium

本文转载自: https://blog.csdn.net/u011360767/article/details/126783692
版权归原作者 小白头一号 所有, 如有侵权,请联系我们删除。

“ChromeDriverService”的评论:

还没有评论