全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网

截图策略

更新时间:2017-06-07 13:26:11

MQC一直在探索和寻找各种方法帮助用户发现更多的问题、更快速的定位问题。 为此,我们提供了两类不同的截图功能来满足不同的用户的需求。

  • 自动截图。自动截图是我们提供的一种默认的截图方式,测试系统会在APP测试过程中,自动的进行屏幕抓取。这种方式下,您无需增加任何成本,只需要将APP和测试脚本提交即可。

  • 自定义截图。系统自动截图,有时候并不能满足您的精确截图的需求(比如把截图作为功能测试通过与否的决定条件)。为了满足精确截图的需求,我们推出了自定义截图功能, 自定义截图能够非常精确的进行截图。自定义截图是通过logcat日志发送截图消息实现的。

下面是自定义截图的使用方法。

  1. Robotium脚本

    在Robotium脚本中,我们需要通过Android系统自带的日志系统(android.util.Log)进行截图消息发送,具体使用方法:

    a. 不指定截图文件名,使用时间戳作为文件名

    1. Log.i("MQC-LOG-MASTER", "screenshot");
    2. solo.sleep(2000); // 调用截图,请等待2秒钟。

    b. 指定截图文件名

    1. Log.i("MQC-LOG-MASTER", "screenshot picName"); // 以picName作为本次截图的文件名。
    2. solo.sleep(2000); // 调用截图,请等待2秒钟
  2. Appium脚本

    我们需要调用Appium的Python 客户端包中的方法:

    a. 不指定截图文件名称,使用时间戳作为文件名

    1. // dirver 是Appium WebDriver的一个实例对象,可以通过driver 下的各个方法操作设备,比如shell函数,就是在手机上执行一个shell命令。
    2. driver.shell("log -p i -t MQC-LOG-MASTER screenshot")
    3. // 需要import time 这个包
    4. time.sleep(2) // 等待2s

    b. 指定截图文件名

    1. // 以picName作为本次截图的名称
    2. driver.shell("log -p i -t MQC-LOG-MASTER screenshot picName")
    3. // 需要import time 这个包
    4. time.sleep(2) // 等待2s
本文导读目录