本文主要是介绍Java+Selenium3方法篇20-浏览器退出quit和close的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
本文介绍webdriver中关于浏览器退出操作。driver中有两个方法是关于浏览器关闭,一个叫quit,一个叫close。先来看看看两者的声明描述,请看下面声明文档。
/*** Close the current window, quitting the browser if it's the last window currently open.*/void close();/*** Quits this driver, closing every associated window.*/void quit();
从上面描述,可以知道,close方法是,关闭当前窗口,这个当前,如何理解,就是driver实例操作的页面,叫当前。如果当前窗口只有一个tab,那么这个close方法就相当于关闭了浏览器。quit方法就是直接退出并关闭所有关联的tab窗口。所以,close方法一般关闭一个tab,quit方法才是我们认为的完全关闭浏览器方法。为了证明这个,我们用一个例子去演示。
package lessons;import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;public class FindElement_LinkText {public static void main(String[] args) throws Exception {System.setProperty("webdriver.chrome.driver", ".\\Tools\\chromedriver.exe");WebDriver driver = new ChromeDriver();driver.manage().window().maximize();driver.get("https://www.baidu.com");//By linkText 查找元素driver.findElement(By.partialLinkText("设为主页")).click();Thread.sleep(1000);driver.close();//driver.quit();}}
通过切换注销最后两行代码,分别运行,观察这两种方法的实际效果。当使用close方法的时候,由于driver停留在百度首页,所以这个时候关闭了百度首页这个tab,如何设置首页并没有关闭。因为如何设置首页,driver并没有切换到这个页面,所以不影响。如果使用quit方法,整个浏览器都直接关闭。
一般来说,我们在自动化测试脚本运行完之后,需要恢复到干净环境,所以,一般都采用driver.quit()来直接关闭浏览器。
这篇关于Java+Selenium3方法篇20-浏览器退出quit和close的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!