Web和安卓自动化截图功能

在功能自动化测试脚本中加上截图功能,方便分析测试结果。

Web截图代码

    protected static WebDriver driver;
    public static void getScreenShot(String fileName) {

        File screenshot = null;
        if (!(driver instanceof TakesScreenshot)) {
            WebDriver augmentDriver = new Augmenter().augment(driver);
            screenshot = ((TakesScreenshot) augmentDriver).getScreenshotAs(OutputType.FILE);
        } else
            screenshot = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);

        fileName = "C:\\screenShot\\"+ fileName + ".png";

        try {
            FileInputStream imgIs = new FileInputStream(screenshot);
            FileOutputStream imageOs = new FileOutputStream(new File(fileName));
            FileChannel imgCin = imgIs.getChannel();
            FileChannel imgCout = imageOs.getChannel();
            imgCin.transferTo(0, imgCin.size(), imgCout);
            imgCin.close();
            imgCout.close();
            imgIs.close();
            imageOs.close();
        } catch (IOException e) {
            System.out.println("截图失败,错误信息为:" + e.getMessage());
        }
    }

安卓截图代码

    protected static AndroidDriver androidDriver;
    public static void getScreenShot(String fileName) {

        File screenshot = androidDriver.getScreenshotAs(OutputType.FILE);
            fileName = "C:\\screenShot\\"+ fileName + ".png";
            try {
                FileInputStream imgIs = new FileInputStream(screenshot);
                FileOutputStream imageOs = new FileOutputStream(new File(fileName));
                FileChannel imgCin = imgIs.getChannel();
                FileChannel imgCout = imageOs.getChannel();
                imgCin.transferTo(0, imgCin.size(), imgCout);
                imgCin.close();
                imgCout.close();
                imgIs.close();
                imageOs.close();
            } catch (IOException e) {
                System.out.println("截图失败,错误信息为:" + e.getMessage());
            }

    }

在点击元素的过程中加入截图功能

    public static void click(By element){

        try{
            driver.findElement(element).click();
        }catch(Exception e){
            getScreenShot(element.toString());
            throw new NoSuchElementException("点击元素失败!");
        }
    }

若点击失败,截图在C:\screenShot文件夹下面保存。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值