截图与等待空闲

一、截图和等待空闲相关知识:

1)图片缩放比例:例如图片从100像素缩小到50像素

2)图片质量:是指图片大小,质量越高图片越大,质量越低图片越小

3)File类:指的是一个文件或者一个文件夹

4)图片格式:图片截图都采用的PNG格式

5)空闲状态:窗口没有更新就是没有动作,界面处于不动状态

6)窗口更新事件:窗口打开的过程就是一个更新事件,打开后不动了就是空闲状态

二、截图相关API:

返回值 方法名 描述
boolean takeScreenShot(File storePath) 把当前窗口截图并将其保存为PNG默认1.0f的规格(原尺寸)和90%质量,参数为File类的文件路径
boolen takeScreenShot(File storePath, float scale, int quality) 把当前窗口截图为PNG格式图片,可以自定义缩放比例和质量

参数说明:

storePath:存储路径,必须为png格式

scale:缩放比例,1.0为原图

quality:图片压缩质量,范围为0-100

三、截图API应用举例:

package com.uiautomatortest;

import java.io.File;

import android.graphics.Point;
import android.os.Bundle;
import android.os.RemoteException;
import android.view.KeyEvent; import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class Test extends UiAutomatorTestCase { public void testScreen(){ UiDevice.getInstance().pressHome();
sleep(1000);
UiDevice.getInstance().pressMenu();
sleep(2000);
UiDevice.getInstance().takeScreenshot(new File("/sdcard/screen.png"));
} }

Test.java

四、等待空闲相关API:

返回值 方法名 描述
void waitForIdle(long timeout) 自定义超时等待当前应用处于空闲状态
void waitForIdle() 等待当前应用处于空闲状态,默认等待10s
boolean waitForWindowUpdate(String packageName, long timeout) 等待窗口内容更新事件的发生

五、等待空闲API

package com.uiautomatortest;

import java.io.File;

import android.graphics.Point;
import android.os.Bundle;
import android.os.RemoteException;
import android.view.KeyEvent; import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class Test extends UiAutomatorTestCase { public void testWait(){ //[256,577][320,640]
int x, y;
x=(320-256)/2+256;
y=(640-577)/2+577;
UiDevice.getInstance().pressHome();
UiDevice.getInstance().waitForIdle(3000);
UiDevice.getInstance().click(x, y);
String packageName="com.android.browser";
UiDevice.getInstance().waitForWindowUpdate(packageName, 20000); } }

Test.java

Android无线测试之—UiAutomator UiDevice API介绍七的更多相关文章

  1. Android无线测试之—UiAutomator UiDevice API介绍一

    UiDevice 类介绍 1.UiDevice 代表设备状态 2.UiDevice 为单例模式 获取UiDevice实例的方式: 1) UiDevice.getInstance() 2) getUiD ...

  2. Android无线测试之—UiAutomator UiDevice API介绍八

    获取包名.开启通知栏.快速设置.获取布局文件的方法 一.包名.通知栏.快速设置.布局文件等相关知识: 1)包名:标示应用的符号,每个应用的名字 2)通知栏:从主界面的顶端向下拉,就可以打开通知栏 3) ...

  3. Android无线测试之—UiAutomator UiDevice API介绍四

    拖拽与滑动 一.概念介绍: 1)拖拽:将组建从一个坐标移动到另一个坐标 2)移动:从一二坐标点移动到另一个坐标点 3)步长:从一点滑动到另一点使用的时间 二.拖拽与滑动的相关API: 返回值 方法名 ...

  4. Android无线测试之—UiAutomator UiScrollable API介绍七

    滑动到某个对象 一.滑动到某个对象相关API 返回值 API 描述 boolean scrollIntoView(UiSelector selector) 滑动到条件元素所在位置,并且尽量让其居于屏幕 ...

  5. Android无线测试之—UiAutomator UiObject API介绍七

    判断对象是否存在 1.判断对象是否存在相关API 返回值 API 描述 boolean waitForExists(long timeout) 等待对象出现 boolean waitUntilGone ...

  6. Android无线测试之—UiAutomator UiDevice API介绍六

    一.灭屏和唤醒屏幕相关知识: 1)灭屏:按电源键将屏幕熄灭 2)唤醒屏幕:在灭屏状态下按电源键唤醒屏幕 二.灭屏与唤屏相关的API: 返回值 方法名 描述 void wakeUp() 模拟按电源键,如 ...

  7. Android无线测试之—UiAutomator UiDevice API介绍五

    屏幕旋转 一.屏幕旋转相关知识: 1)旋转方向:0度,90度(向左转),180度,270度(向右转) 2)重力感应器:重力感应器是旋转所依靠的 3)固定位置:指将屏幕方向固定在0度,90度或者180度 ...

  8. Android无线测试之—UiAutomator UiDevice API介绍三

    获取坐标与坐标点击 一.坐标相关的知识: 1)手机屏幕坐标:左上角开始到右下角结束 2)DP:设备独立像素,例如320像素显示到640像素上要拉伸一倍 3)Point:代表一个点(x,y),左上角的坐 ...

  9. Android无线测试之—UiAutomator UiDevice API介绍二

    按键与KEYCODE使用 一.手机常见按键: 1)HOME 主屏幕键 2) MENU 菜单键 3) BACK 返回键 4) VOLUME_UP 音量加键 5) VOLUME_DOWN 音量减键 6) ...

随机推荐

  1. [转]Nginx调用远程php-fpm

    Nginx调用远程php-fpm 前后端分离的网站,要在异地部署多套网页的时候,这种nginx配置调用远程php-fpm的方式,不错.可以提高网页的相应速度. 原文: https://www.cnbl ...

  2. vue2计算属性computed

    详见vue2.0 API<计算属性> 需求: 模板内的表达式是非常便利的,但是它们实际上只用于简单的运算.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id=&qu ...

  3. PHP+MYSQL的搭建

    如今准备研究下微信的开发,所以要研究下PHP了,但对这个平台还是非常陌生的,所以网上找了些资料并測试,现贴出来给大家參考. 第一步:我们先下载[PHPStudy 2013]或者最新版本号: 下载地址: ...

  4. 利用forever在Linux上实现Node.js项目自启动

    在一台计算机上手动跑Node项目简单,node xx.js就搞定了,想让Node项目后台执行,尽管不能直接用node命令搞定,可是在安装了forever这个包以后.还是非常轻松的.只是要是在远程ser ...

  5. NodeJS实战——创建基础应用并应用模板引擎

    本次的目的是搭建一个最基础忽地可以实现功能的NodeJSserver,可以体现出NodeJS的工作流程以及开发的基本框架. 需求:已经安装了nodejs以及express. 一.构建基础的NodeJS ...

  6. LInux——安装Apache

    在安装Apache的httpd的时候经常会遇到: configure: error: APR not found .  Please read the documentation. configure ...

  7. ant Form 常用 api

    经过 Form.create 包装的组件将会自带 this.props.form 属性,this.props.form 提供的 API 如下: 注意:使用 getFieldsValue getFiel ...

  8. 谷歌Cartographer学习 -快速安装测试

    参考资料:https://www.cnblogs.com/hitcm/p/5939507.html PC下面进行安装: 遇到的问题如下 1.首先安装ceres solver 在编译的时候,如果是低配的 ...

  9. IOS 应用程序路径

    -- 获取资源文件目录 .app/下的图片,音频等资源文件 print("bundlePath" + NSBundle.mainBundle().bundlePath) //以下是 ...

  10. XYWi-Fi v2.0 简单的笔记本无线热点分享工具【Win】

    [软件名称]XYWi-Fi [版本号]v2.0 [适用系统]Windows 7/8/8.1/10 [功能特性]简单的笔记本无线热点分享工具 [下载地址]pan.baidu.com/s/1mgmOpJi ...