一、截圖
1. Firefox瀏覽器截圖
FirefoxDriver firefoxDriver = new FirefoxDriver(); firefoxDriver.getScreenshotAs(OutputType type);
2. Chrome瀏覽器截圖
ChromeDriver chromeDriver = new ChromeDriver(); chromeDriver.getScreenshotAs(OutputType type);
3. IE瀏覽器的截圖
InternetExplorerDriver ieDriver = new InternetExplorerDriver(); ieDriver.getScreenshotAs(OutputType type);
二、代碼實現
1.創建瀏覽器驅動參考:https://www.cnblogs.com/xiaozhaoboke/p/11074562.html
2.瀏覽器截圖實現代碼:
package cn.test; import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.commons.io.FileUtils; import org.openqa.selenium.By; import org.openqa.selenium.OutputType; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.ie.InternetExplorerDriver; import org.testng.annotations.Test; import cn.test.BaseCase; public class Screenshots extends BaseCase { @Test public void test() { try { driver.get("http://www.baidu.com");//獲取當前系統時間 Date date = new Date(); //定義系統時間輸出格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd_HH-mm-ss"); String strTime = sdf.format(date); File img =null; if(driver instanceof ChromeDriver) { //將driver向下轉型chromeDriver ChromeDriver chromeDriver = (ChromeDriver)driver; //調用chromeDriver.getScreenshotAs()方法得到截圖文件 img= chromeDriver.getScreenshotAs(OutputType.FILE); }else if(driver instanceof FirefoxDriver){ FirefoxDriver firefoxDriver = (FirefoxDriver)driver; img = firefoxDriver.getScreenshotAs(OutputType.FILE); }else if(driver instanceof InternetExplorerDriver) { InternetExplorerDriver ieDriver = (InternetExplorerDriver)driver; img = ieDriver.getScreenshotAs(OutputType.FILE); } //使用commons.io包提供的FileUtils工具類,直接copy一份保存到指定路徑下 //copyFile方法傳入的都是File類型 FileUtils.copyFile( img, new File("src/test/resources/"+strTime+"_img.png")); } catch (Exception e) { e.printStackTrace(); } } }

學習后總結,不足之處后續補充,未完待續。。。
