Android无线测试之—UiDevice APP介绍二

按键与KEYCODE使用

一、手机常见按键:

  1)HOME 主屏幕键

  2) MENU 菜单键

  3) BACK 返回键

  4) VOLUME_UP 音量加键

  5) VOLUME_DOWN 音量减键

  6) RecentApps 最近使用app

  7) POWER 电源键

  8) Dpad 上下左右键

  9) ......

二、按键API说明:

返回值 方法名 描述
boolean pressBace() 模拟短按返回back键
boolean pressDPadCenter() 模拟轨迹球中点按键
boolean pressDPadDown() 模拟轨迹球向下按键
boolean pressDPadLeft() 模拟轨迹球向左按键
boolean pressDPadRight() 模拟轨迹球向右按键
boolean pressDPadUp() 模拟轨迹球向上按键
boolean pressDelete() 模拟短按删除delete按键
boolean pressEnter() 模拟短按回车键
boolean pressHome() 模拟短按home键
boolean pressKeyCode(int keyCode, int metaState) 模拟短按键盘代码keyCode
boolean pressKeyCode(int keyCode) 模拟短按键盘代码keyCode
boolean pressMenu() 模拟短按menu键
boolean pressRecentApps() 模拟短按最近使用程序
boolean pressSearch() 模拟短按搜索键

举例:

package com.uiautomatortest;

import android.os.Bundle;
import android.os.RemoteException;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class Test extends UiAutomatorTestCase {

    public void testHome(){

        UiDevice.getInstance().pressHome();
        sleep(2000);
    }

    public void testMenu(){

        UiDevice.getInstance().pressMenu();
        sleep(2000);
    }

    public void testRecent() throws RemoteException{

        UiDevice.getInstance().pressRecentApps();
        sleep(2000);
    }

}

Test.java

三、KEYCODE 键盘映射码:

  1)KeyEvent 按键事件

  2)META KEY

    辅助功能键:ALT、SHIFT、CAPS_LOCK

激活状态 metaState
base META_key未被激活 0
caps Shift或Caps Lock被激活 1
fn Alt被激活 2
caps_fn Alt、Shift或Caps Lock同时被激活 3

举例:

package com.uiautomatortest;

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 testHome(){

        UiDevice.getInstance().pressHome();
        sleep(2000);
    }

    public void testMenu(){

        UiDevice.getInstance().pressMenu();
        sleep(2000);
    }

    public void testRecent() throws RemoteException{

        UiDevice.getInstance().pressRecentApps();
        sleep(2000);
    }

    public void testKeyCode(){

        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A); //小写a
        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_B); //小写b
        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_C); //小写c

        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A,1); //大写A
        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_B,1); //大写B
        UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_C,1); //大写C

    }

}

Test.java

时间: 2024-10-28 15:53:50

Android无线测试之—UiDevice APP介绍二的相关文章

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

获取包名.开启通知栏.快速设置.获取布局文件的方法 一.包名.通知栏.快速设置.布局文件等相关知识: 1)包名:标示应用的符号,每个应用的名字 2)通知栏:从主界面的顶端向下拉,就可以打开通知栏 3)快速设置:打开通知栏,右上角有个设置,快速设置可以进行设置.无线网络等等 4)布局文件:界面布局的文件,显示界面各个控件元素信息的文件 二.相关API: 返回值 包名 描述 void getCurrentPackageName() 获取当前界面的包名 void dumpWindowHierarchy

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

拖拽与滑动 一.概念介绍: 1)拖拽:将组建从一个坐标移动到另一个坐标 2)移动:从一二坐标点移动到另一个坐标点 3)步长:从一点滑动到另一点使用的时间 二.拖拽与滑动的相关API: 返回值 方法名 描述 boolean drag(int startX, int startY, int endX, int endY, int steps) 拖动对象从一个坐标拖动到另一个坐标 boolean swipe(Point[] segments, int segmentSteps) 再点阵列中滑动,5ms

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

屏幕旋转 一.屏幕旋转相关知识: 1)旋转方向:0度,90度(向左转),180度,270度(向右转) 2)重力感应器:重力感应器是旋转所依靠的 3)固定位置:指将屏幕方向固定在0度,90度或者180度等 4)物理旋转:物理旋转与重力感应器关联在一块,关闭物理旋转就是关闭了重力感应器,反之亦然) 二.旋转屏幕相关API: 返回值 方法名 描述 void setOrientationLeft() 通过禁用传感器,然后模拟设备向左转,并且固定位置 void setOrientationNatural(

Android无线测试之—UiAutomator UiDevice API介绍七

截图与等待空闲 一.截图和等待空闲相关知识: 1)图片缩放比例:例如图片从100像素缩小到50像素 2)图片质量:是指图片大小,质量越高图片越大,质量越低图片越小 3)File类:指的是一个文件或者一个文件夹 4)图片格式:图片截图都采用的PNG格式 5)空闲状态:窗口没有更新就是没有动作,界面处于不动状态 6)窗口更新事件:窗口打开的过程就是一个更新事件,打开后不动了就是空闲状态 二.截图相关API: 返回值 方法名 描述 boolean takeScreenShot(File storePa

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

一.灭屏和唤醒屏幕相关知识: 1)灭屏:按电源键将屏幕熄灭 2)唤醒屏幕:在灭屏状态下按电源键唤醒屏幕 二.灭屏与唤屏相关的API: 返回值 方法名 描述 void wakeUp() 模拟按电源键,如果屏幕是唤醒的没有任何作用 void sleep() 模拟按电源键,如果屏幕是关闭的则没有任何作用 boolean isScreenOn() 检查屏幕是否亮屏 三.API应用举例: package com.uiautomatortest; import android.graphics.Point;

Android无线测试之—UiAutomator UiScrollable API介绍二

快速滑动 一.快速滑动相关概念 1.步长:从一点滑动到另一点所用的时间 2.扫动次数:例如列表,要滑动多少次才能到底部,这个滑动次数就是扫动次数 二.相关API 返回值 API 描述 boolean flingBackward() 以步长为5快速向后滑动 boolean filingForward() 以步长为5快速向前滑动 boolean flingToBeginning(int maxSwipes) 自定义扫动次数以步长为5快速滑动到起始 boolean flingToEnd(int max

Android无线测试之—UiAutomator UiObject API介绍二

点击与长按 一.组件区域位置关系 Rect 对象代表一个矩形区域 [Left,Top] [Right,Bottom] 二.点击与长按API 返回值 API 描述 boolean click() 点击对象 boolean clickAndWaitForNewWindow(lang timeout) 点击对象,等待新窗口出现,参数为等待超长时间 boolean clickAndWaitForNewWindow() 点击对象,等待新窗口出现 boolean clickBottomRight() 点击对

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

获取坐标与坐标点击 一.坐标相关的知识: 1)手机屏幕坐标:左上角开始到右下角结束 2)DP:设备独立像素,例如320像素显示到640像素上要拉伸一倍 3)Point:代表一个点(x,y),左上角的坐标永远为(0,0) 二.坐标相关API: 返回值 方法名 描述 boolean click(int x, int y) 使用坐标点击屏幕 int getDisplayHeight() 获取屏幕高度 Point getDisplaySizeDP() 获取显示尺寸返回显示大小(设备独立像素) 屏幕旋转返

Android无线测试之—UiAutomator UiScrollable API介绍三

获取列表子元素 一.相关API介绍 返回值 API 描述 UiObject getChildByDescription(UiSelector childPattern, String text, boolean allowScrollSearch) 是否允许滚动查看获取具备UiSelector条件元素集合后再以文本描述条件查找对象 UiObject getChildByDescription(UiSelector childPattern, String text) 默认滚动获取具备UiSele