• 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);
  • 相关阅读:
    20145316《信息安全系统设计基础》第七周学习总结
    20145316 许心远《信息安全系统设计基础》第六周学习总结
    20145316 《信息安全系统设计基础》第五周学习总结
    20145316 《信息安全系统设计基础》第二周学习总结
    面试之关系型数据库
    面试之网络基础
    Java 并发
    Scrapy 组件的具体用法
    Scrapy 框架入门
    Spring Security 介绍与Demo
  • 原文地址:https://www.cnblogs.com/milanmi/p/4636398.html
Copyright © 2020-2023  润新知