获取列表子元素

一、相关API介绍

返回值 API 描述
UiObject getChildByDescription(UiSelector childPattern, String text, boolean allowScrollSearch) 是否允许滚动查看获取具备UiSelector条件元素集合后再以文本描述条件查找对象
UiObject getChildByDescription(UiSelector childPattern, String text) 默认滚动获取具备UiSelector条件元素集合后再以文本描述条件查找对象
UiObject getChildByInstance(UiSelector childPattern, int instance) 获取具备UiSelector条件的子集,再从子集中按照实例筛选想要的元素(不滚动)
UiObject getChildByText(UiSelector childPattern, String text, boolean allowScrollSearch) 是否允许滚动查看获取具备UiSelector条件元素集合后再以文本条件查找对象
UiObject getChildByText(UiSelector childPattern, String text) 默认滚动获取具备UiSelector条件元素集合后再以文本条件查找对象

二、API应用举例

package com.testuiselector;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiScrollable;
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="demo2";
testClass="com.testuiselector.Demo";
testName="testScrollGetChild";
androidId="1";
new UiAutomatorHelper(jarName, testClass, testName, androidId); } public void testScrollGetChild() throws UiObjectNotFoundException{
UiDevice.getInstance().pressHome();
sleep(1000); UiObject people=new UiObject(new UiSelector().text("People"));
people.clickAndWaitForNewWindow(); UiScrollable scroll=new UiScrollable(new UiSelector().className("android.widget.ListView")); //指定可以滚动查找子元素,可以成功找到在任何页中的电话信息
UiObject H=scroll.getChildByText(new UiSelector().className("android.widget.TextView"), "H", true);
H.click(); //指定不可以滚动查找子元素,如果查找的电话信息不在第一页,会报错
UiObject J=scroll.getChildByText(new UiSelector().className("android.widget.TextView"), "J", false);
J.click(); //getChildByInstance,不可以滚动,因此查找非第一页的电话信息会报错
UiObject someone=scroll.getChildByInstance(new UiSelector().className("android.widget.TextView"), 20);
someone.click();
} }

Demo.java

二、相关API应用举例

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

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

    UiScrollable类介绍 一.UiScrollable类说明: 1.UiScrollable是UiCollection的子类,因此它可以使用UiCollection和Uiobject类的所有公共 ...

  2. Android无线测试之—UiAutomator UiScrollable API介绍五

    滑动区域校准常量设置与获取 一.校准概念 校准常量指的是:滑动操作坐标时的偏移量,用来取偏移比例 二.相关API 返回值 API 描述 double getSwipeDeadZonePercentag ...

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

    快速滑动 一.快速滑动相关概念 1.步长:从一点滑动到另一点所用的时间 2.扫动次数:例如列表,要滑动多少次才能到底部,这个滑动次数就是扫动次数 二.相关API 返回值 API 描述 boolean ...

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

    设置滚动方向 一.设置滚动方向相关API 返回值 API 描述 UiScrollable setAsHorizontalList 设置滚动方向为水平滚动 UiScrollable setAsVerti ...

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

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

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

    向前与向后滚动API 一.向前与向后滚动相关API 返回值 API 描述 boolean scrollBackward(int steps) 自动以步长向后滑动 boolean scrollBackw ...

  7. Android无线测试之—UiAutomator UiScrollable API介绍四

    获取与设置最大滚动次数常量值 一.获取与设置最大滚动次数常量值相关API 返回值 API 描述 int getMaxSearchSwipes() 获取执行搜索滑动过程中的最大滑动次数,默认最大滚动次数 ...

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

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

  9. Android无线测试之—UiAutomator UiObject API介绍三

    拖拽与滑动 一.拖拽与滑动的示意图 二.拖拽与滑动相关的API 返回值 API 描述 boolean dragTo(UiObject destObj, int setps) 拖拽对象到另一个对象位置上 ...

随机推荐

  1. JSP简单练习-EL获取表单数据

    输入username和password的界面: <%@ page language="java" contentType="text/html;charset=gb ...

  2. Linux基础——sar 查看网卡流量

    sar -n DEV #查看当天从零点到当前时间的网卡流量信息 sar -n DEV 1 10 #每秒显示一次,共显示10次 sar -n DEV -f /var/log/sa/saxx #查看xx日 ...

  3. MVC项目发布到IIS遇到的问题

    MVC4 + .NET Framework 4.5 +Windows Server 2008+ IIS7.5 + 4.0集成模式池 ,发布后可能会遇到404.0 或者403.14错误,在web.con ...

  4. hihoCoder[Offer收割]编程练习赛1题目解析

    题目1 : 九宫 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描写叙述 小Hi近期在教邻居家的小朋友小学奥数.而近期正好讲述到了三阶幻方这个部分,三阶幻方指的是将1~9不反 ...

  5. Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结

    Atitit.字节数组转字符串 base64 base16 Quoted-printable 编码原理设计 attilax 总结 1. Base64编码, 1 2. Base64实现转换原理1 3.  ...

  6. [PIC32--IDE]Microchip PIC32开发环境的搭建

    问题描写叙述 PIC32是Microchip推出的32 bit MCU,其内核是MIPS架构的,MIPS也是属于RISC指令集的,好像ARM的指令集还在RISC指令集中做了一些扩充,而MIPS应当是更 ...

  7. 170. Rotate List【medium】

    Given a list, rotate the list to the right by k places, where k is non-negative.   Example Given 1-& ...

  8. SonarQube 7.x 的安装使用 + 集成Maven 使用

    SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装.配置以及使用. 下载地址:http://www.sonarqube.org/do ...

  9. Golang并发原理及GPM调度策略(一)

    其实从一开始了解到go的goroutine概念就应该想到,其实go应该就是在内核级线程的基础上做了一层逻辑上的虚拟线程(用户级线程)+ 线程调度系统,如此分析以后,goroutine也就不再那么神秘了 ...

  10. nodejs之express的使用

    Express是目前最流行的基于Node.js的Web开发框架,可以快速的搭建一个完整功能的网站. Express框架建立在内置的http模块上,http模块生成服务器的原始代码如下. var htt ...