天天看點

Java+Selenium——浏覽器退出quit和close的差別

close方法是,關閉目前視窗,這個目前,如何了解,就是driver執行個體操作的頁面,叫目前。

如果目前視窗隻有一個tab,那麼這個close方法就相當于關閉了浏覽器。

quit方法就是直接退出并關閉所有關聯的tab視窗。

是以,close方法一般關閉一個tab,quit方法才是我們認為的完全關閉浏覽器方法。

package rjcs;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Set;

import org.openqa.selenium.interactions.Actions;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.By;
import org.openqa.selenium.Keys;
import org.openqa.selenium.WebElement;
import org.testng.annotations.Test;
import org.openqa.selenium.*;

import java.awt.Rectangle;
import java.awt.Robot;
import java.awt.Toolkit;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

import org.openqa.selenium.OutputType;

import com.thoughtworks.selenium.SeleneseTestNgHelper;

public class ckqhh 
{
    public static void main(String[] args)
    
    {
         System.setProperty("webdriver.firefox.bin","C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe");    //設定火狐的安裝路徑,防止系統找不到
            
         FirefoxDriver driver = new FirefoxDriver();        //初始化FireFox浏覽器執行個體,并打開浏覽器
         
        try
        {
             driver.manage().window().maximize();         //最大化視窗
             
             Thread.sleep(3000);        
             
             driver.manage().window().maximize();         //最大化視窗
             
             Thread.sleep(3000);


             driver.get("https://www.baidu.com");
         
             //By linkText 查找元素
             driver.findElement(By.partialLinkText("設為首頁")).click();
             Thread.sleep(5000);
         
             driver.close();     //關閉目前tab

            //driver.quit();    //退出浏覽器,關閉所有頁面
             
             Thread.sleep(5000);
             
        }catch (Exception e) 
        {
            e.printStackTrace();
        }finally 
        {
            driver.quit();
        
         }
   }
    

}