Java+Selenium3方法篇20-浏览器退出quit和close的区别
2017-06-21 16:03
489 查看
本文介绍webdriver中关于浏览器退出操作。driver中有两个方法是关于浏览器关闭,一个叫quit,一个叫close。先来看看看两者的声明描述,请看下面声明文档。
一般来说,我们在自动化测试脚本运行完之后,需要恢复到干净环境,所以,一般都采用driver.quit()来直接关闭浏览器。
/** * 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()来直接关闭浏览器。
相关文章推荐
- selenium中的quit和close方法的区别
- Java_基础—flush和close方法的区别
- WM_CLOSE、WM_DESTROY、WM_QUIT的区别(询问,销毁窗口,退出进程,都不是一回事)
- Java+Selenium3方法篇19-获取浏览器窗体的句柄
- Java关键字new和newInstance方法的区别
- WM_Close,WM_Destory与WM_Quit的区别
- 浏览器无法运行JAVA脚本的解决方法
- java中方法和属性的区别
- java方法的重载、覆盖和隐藏,以及多态的区别
- WM_Close,WM_Destory与WM_Quit的区别
- Java中关于==和equal的区别 以及equals()方法重写
- 不使用 java.awt.Desktop API,打开默认浏览器访问指定链接的方法
- Java newInstance()方法和new关键字区别
- Hibernate中get和load方法的区别以及close(),clear()、evict()等的区别
- java中equals方法和“==”的区别
- java中构造器和方法的区别
- java学习中重写与重载方法的区别(转自:小鸟的天空)
- java方法的重载、覆盖和隐藏,以及多态的区别
- Java中方法重载和方法重写区别
- Java中方法重写与方法重载的区别