zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    洛谷P1072 Hankson 的趣味题(题解)
    18.3.19晚听韩明睿大佬讲题收获
    题解+新技巧--一本通1282:最大子矩阵
    题解-洛谷P1303 A*B Problem(高精)
    Java重载和覆盖
    propagation属性的7个传播行为
    脏读、不可重复读、幻读
    RSA 数据加密和数字签名算法
    大型互联网站解决高并发的常见策略
    死锁和活锁
  • 原文地址:https://www.cnblogs.com/fsw-blog/p/4564187.html
Copyright © 2011-2022 走看看