zoukankan      html  css  js  c++  java
  • selenium2 断言失败自动截图 (四)

    一般web应用程序出错过后,会抛出异常。这个时候能截个图下来,当然是极好的。

    selenium自带了截图功能。

                //获取截图file
                File scrFile= ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
                //将图片移动到指定位置
                FileUtils.moveFile(scrFile, new File(newFilePath));

    当然在截图之前 需要判断新路径是否合法。下面贴出整体的代码。

    package common;
    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;
    public class ScreenShot {
        public WebDriver driver;
        public ScreenShot(WebDriver _driver){
            driver=_driver;
        }
        private void takeScreenshot(String screenPath){
            try {
                //获取截图file
                File scrFile= ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE);
                //将图片移动到指定位置
                FileUtils.moveFile(scrFile, new File(screenPath));
            }  catch (IOException e) {
                e.printStackTrace();
            }
        }
        public void takeScreenshot(){
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd(hh_mm_ss)SSS");
            String fileName=dateFormat.format( new Date());
            //创建新的文件名
            String screenName=fileName+".jpg";
            //创建文件夹
            File dir = new File("test-output/snapshot");
            if (!dir.exists()){
                dir.mkdirs();
            }
            //获取新文件名的绝对路径
            String screenPath= dir.getAbsolutePath()+"/"+screenName;
            //截图
            this.takeScreenshot(screenPath);
        }
    }

    调用

    ScreenShot ss = new ScreenShot(Driver);
  • 相关阅读:
    删除MFC单文档默认菜单栏的两种方法
    mfc更改背景色
    (转)VC单选按钮控件(Radio Button)用法
    转:MFC 基于对话的程序界面显示完全后立即执行一个函数
    转:vc6以上如何给MFC对话框添加OnInitDialog函数
    常用网址
    2010年春季学期C语言程序设计答疑安排
    rdlc导出Excel
    SQL Server查询表的结构
    C# WinForm开发系列 WebBrowser
  • 原文地址:https://www.cnblogs.com/milanmi/p/4636398.html
Copyright © 2011-2022 走看看