悠悠小仙仙 发表于 2017-7-14 11:48:32

【转帖】WebDriver拾级而上(12) – 截图selenium-webdriver


好的测试人员都会截得一手好图,就跟骨灰级宅男定会吟得一手好诗一般。
截取页面全图,不管页面有多长。
Java代码:
CODE:
<font size="4">package com.test;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.apache.commons.io.FileUtils;
import org.openqa.selenium.OutputType;
import org.openqa.selenium.TakesScreenshot;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class Test_ShotScreen {
    public static void main(String[] args) throws IOException, InterruptedException{
      String url = "http://www.51.com";
      //打开chrome
      WebDriver dr = new ChromeDriver();
      dr.get(url);

      //这里等待页面加载完成
      Thread.sleep(5000);
         
      //下面代码是得到截图并保存在D盘下
      File screenShotFile = ((TakesScreenshot)dr).getScreenshotAs(OutputType.FILE);
      //FileUtils.copyFile(screenShotFile, new File("D:/test.png"));
      FileUtils.copyFile(screenShotFile, new File("D:\\AutoScreenCapture\\" + getCurrentDateTime()+ ".jpg"));

      dr.quit();
    }

    public static String getCurrentDateTime(){
      SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd_HHmmss");//设置日期格式
      //System.out.println(df.format(new Date()));
      return df.format(new Date());
    }
}</font>
方法:
CODE:
<font size="4">import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
      
public void takeScreenShot(String name){
    File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
    try {
      FileUtils.copyFile(scrFile, new File("c:\\Learning\\"+ name));
    } catch (IOException e) {
      e.printStackTrace();
    }
}</font>

巴黎的灯光下 发表于 2017-7-14 15:12:00

辛苦了,我的楼
页: [1]
查看完整版本: 【转帖】WebDriver拾级而上(12) – 截图selenium-webdriver