51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2457|回复: 2
打印 上一主题 下一主题

【佳乐Selenium】DAY-11 截图

[复制链接]
  • TA的每日心情
    开心
    2024-10-4 10:34
  • 签到天数: 1208 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2015-3-3 16:10:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    网上搜截图的方法很多

    1.自定义一个 WeDdriver 的监听器,在出异常的时候截图。
    2.利用 Juint 的 TestRule, 自定义一个 Rule 在运行失败的时候截图。

    这些对现阶段的我来说太难了

    我用的是最简单的一个

    一、在原来的Page的基础类上 新增截图的方法

       public static void snapshot(String filename)
        {  
            //设置截图存储目录
            String currentPath = "D:/javaworkspace/Selenium2/snapshot";
            
            //取得设置当前时间的格式
            String day = new SimpleDateFormat("yyyyMMdd").format(new Date());//设置日期格式
            
            String time = new SimpleDateFormat("yyyyMMdd-HHmmss").format(new Date());//设置日期格式
            
            File scrFile = ((TakesScreenshot) DriverManager.driver).getScreenshotAs(OutputType.FILE);

              try {
               
                  FileUtils.copyFile(scrFile, new File(currentPath+"\\"+day+"\\"+time+filename));
                  
              } catch (IOException e) {

                  e.printStackTrace();
              }
             
        }

    二、在按钮前后增加截图

        snapshot("before_login_click.png");
       
        //登录按钮
        denglu.click();
       
        snapshot("after_login_click.png");

    就会在指定 目录下 新生成一个日期文件 下面是带时间戳和传入的文件名 截图
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    该用户从未签到

    3#
    发表于 2015-3-4 09:43:15 | 只看该作者
    本帖最后由 ermine 于 2015-3-4 09:46 编辑

    失败后自动截图,可以参考
    https://github.com/NetEase/arrow ... m/netease/qa/testng
    在TestResultListener.java中的“onTestFailure”方法里面,添加你的截图。
    PS:
    忘记说了,这个是基于TestNG的,不是JUnit
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-8 17:36 , Processed in 0.063431 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表