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

点击与长按

一、组件区域位置关系

  Rect 对象代表一个矩形区域 [Left,Top] [Right,Bottom]

二、点击与长按API

返回值 API 描述
boolean click() 点击对象
boolean clickAndWaitForNewWindow(lang timeout) 点击对象,等待新窗口出现,参数为等待超长时间
boolean clickAndWaitForNewWindow() 点击对象,等待新窗口出现
boolean clickBottomRight() 点击对象的右下角
boolean clickTopLeft() 点击对象的左上角
boolean longClick() 长按对象,对对象执行长按操作
boolean longClickBottomRight() 长按对象右下角
boolean longClickTopLeft() 长按对象左上角

三、API应用举例

package com.test.uiobject;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class Demo extends UiAutomatorTestCase {

    /**
     * @param args
     */
    public static void main(String[] args) {
        String jarName,testClass,testName,androidId;
        jarName="demo";
        testClass="com.test.uiobject.Demo";
        testName="testLongClick";
        androidId="1";
        new UiAutomatorHelper(jarName,testClass,testName,androidId);

    }

    public void testClick() throws UiObjectNotFoundException{
        UiDevice.getInstance().pressHome();
        sleep(1000);

        //click()
        UiObject clock=new UiObject(new UiSelector().resourceId("com.android.deskclock:id/analog_appwidget"));
        clock.click();
        sleep(2000);

        UiDevice.getInstance().pressBack();
        sleep(2000);

        //clickAndWaitForNewWindow()
        clock.clickAndWaitForNewWindow();

        UiDevice.getInstance().pressBack();
        sleep(2000);

        //clickAndWaitForNewWindow(timeout)
        clock.clickAndWaitForNewWindow(5000);

        UiDevice.getInstance().pressBack();
        sleep(2000);

        //clickBottomRight()
        clock.clickBottomRight();
        sleep(2000);

        UiDevice.getInstance().pressBack();
        sleep(2000);

        //clickTopLeft()
        clock.clickTopLeft();
        sleep(2000);
        UiDevice.getInstance().pressBack();

    }

    public void testLongClick() throws UiObjectNotFoundException{
        UiDevice.getInstance().pressHome();
        sleep(2000);

        //longClick()
        UiObject people=new UiObject(new UiSelector().text("People"));
        people.longClick();
        sleep(2000);

        //longClickBottomRight()
        people.longClickBottomRight();
        sleep(2000);

        //longClickTopLeft()
        people.longClickTopLeft();
    }

}

Demo.java

时间: 2024-10-16 21:55:36

Android无线测试之—UiAutomator UiObject API介绍二的相关文章

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

手势操作 1.手势相关操作 2.相关API介绍 返回值 API 描述 boolean performMultiPointerGesture(PointerCoords[]... touches) 执行单手触控手势,可定义任意手势与形状 boolean performTwoPointerGesture(Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps) 执行任意两个手指触控手势,模拟两

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

UiObject类介绍 一.UiObject类介绍 UiObject代表一个UI元素,通过UiSelector查找跳进创建一个UiObject实例,找到这个实例以后可以对这个实例进行各类操作 二.UiObject功能 代表一个组件对象,对象有许多模拟实际操作手机的方法和属性

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介绍四

输入文本与清除文本 一.输入文本与清除文本相关API 返回值 API 描述 boolean setText(String test) 在对象中输入文本 void clearTextField() 清除编辑框中的文本 二.输入文本与清除文本实现步骤说明 1)输入文本:清除文本—>输入文本 2)清除文本:长按—>清除文本 三.API应用举例 package com.test.uiobject; import android.view.KeyEvent; import com.android.uia

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

判断对象是否存在 1.判断对象是否存在相关API 返回值 API 描述 boolean waitForExists(long timeout) 等待对象出现 boolean waitUntilGone(long timeout) 等待对象消失 boolean exists() 检查对象是否存在 2.API应用举例 package com.test.uiobject; import java.io.File; import android.graphics.Rect; import android

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

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

Android无线测试之—UiAutomator UiCollection API介绍

UiCollection类介绍 一.UiCollection类说明 1)UiCollection类是UiObject类的子类,即UiObject类的所有方法都被UiCollection继承下来了,都可以使用 2)UiCollection代表元素条目的集合 二.UiCollection功能说明 1)先按照一定的条件枚举出容器类界面所有符合条件的子元素 2)再从符合条件的元素的和集中再次通过一定的条件最终定位需要的组件 三.UiCollection使用场景 1)一般使用容器类组件作为父类 2)一般用

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

Android的布局与组件及组件属性介绍 一.布局: 1)线性布局:控价在线性方向上一次排列 2)表格布局:向表格一样有标准的行和列 3)相对布局:通过相对定位的方式让控件出现在布局的任何位置 4)帧布局:子类会出现在布局的左上角 5)网格布局:类似于表格布局,但比表格布局更灵活,可以比较随意的调整其中的分区模块 6)绝对布局:使用绝对坐标来堆放组件 二.常用组件: 三.常Android组件属性介绍 属性值 值类型 例子 index int 0 instance int 5 class Stri

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

四种匹配关系介绍 一.四种匹配关系介绍: 二.举例: 匹配字符串   0123456789 1.完全匹配: 0123456789 2.包含匹配: 45678.456.678 3.正则匹配: \d{10} 4.起始匹配: 012.01234.01234567 三.程序举例: package com.testuiselector; import com.android.uiautomator.core.UiObject; import com.android.uiautomator.core.UiO