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
  • 相关阅读:
    CF Mike and Feet (求连续区间内长度为i的最小值)单调栈
    BOOST_CLASS_EXPORT
    STL 源代码剖析 算法 stl_algo.h -- search
    烦人的Facebook分享授权
    [Swift]Scanner字符串扫描类
    [Swift]LeetCode682. 棒球比赛 | Baseball Game
    [Swift]LeetCode680. 验证回文字符串 Ⅱ | Valid Palindrome II
    [Swift]LeetCode679. 24点游戏 | 24 Game
    [Swift]LeetCode678. 有效的括号字符串 | Valid Parenthesis String
    [Swift]LeetCode677. 键值映射 | Map Sum Pairs
  • 原文地址:https://www.cnblogs.com/fsw-blog/p/4564187.html
Copyright © 2011-2022 走看看