对象搜索—文本与描述

一、文本属性定位对象:

返回值 API 描述
UiSelector test(String text) 文本完全匹配
UiSelector testContains(String text) 文本包含匹配
UiSelector textMatches(String regex) 文本正则匹配
UiSelector textStartsWith(String text) 文本起始匹配

二、描述属性定位对象:

返回值 API 描述
UiSelector description(String desc) 描述完全匹配
UiSelector descriptionContains(String desc) 描述包含匹配
UiSelector descriptionMatches(String regex) 描述正则匹配
UiSelector descriptionStartsWith(String desc) 描述开始字符匹配

三、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.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class Demo1 extends UiAutomatorTestCase { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String jarName, testClass, testName, androidId;
jarName="demo1";
testClass="com.testuiselector.Demo1";
testName="testText";
androidId="1";
new UiAutomatorHelper(jarName, testClass, testName, androidId);
} public void testText() throws UiObjectNotFoundException{
UiDevice.getInstance().pressHome();
sleep(2000); UiSelector l1=new UiSelector().text("People");
UiObject people1=new UiObject(l1);
people1.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l2=new UiSelector().textContains("ople");
UiObject people2=new UiObject(l2);
people2.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l3=new UiSelector().textMatches(".*opl.*");
UiObject people3=new UiObject(l3);
people3.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l4=new UiSelector().textStartsWith("peo");
UiObject people4=new UiObject(l4);
people4.click();
sleep(2000); UiDevice.getInstance().pressBack(); } public void testDescription() throws UiObjectNotFoundException{
UiDevice.getInstance().pressHome();
sleep(2000); UiSelector l1=new UiSelector().description("Apps");
UiObject desc1=new UiObject(l1);
desc1.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l2=new UiSelector().descriptionContains("pp");
UiObject desc2=new UiObject(l2);
desc2.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l3=new UiSelector().descriptionMatches(".*pp.*");
UiObject desc3=new UiObject(l3);
desc3.click();
sleep(2000); UiDevice.getInstance().pressBack();
sleep(2000); UiSelector l4=new UiSelector().descriptionStartsWith("Ap");
UiObject desc4=new UiObject(l4);
desc4.click();
sleep(2000); UiDevice.getInstance().pressBack(); } }

Demo1.java

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

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

    一. UiSelector类介绍: 1) UiSelector类说明: UiSelector代表一种搜索条件,可以在当前界面上查询和获取特定元素的句柄,当找到多余一个的匹配元素,则返回布局层次结构上第 ...

  2. Android无线测试之—UiAutomator UiSelector API介绍之七

    对象搜索—索引与实例 一.索引与实例说明: 1)index:在同一级中的编号,在兄弟类中组件的编号,index从0开始 2)instance:同一个布局中同一类组件的编号,instance从0开始 二 ...

  3. Android无线测试之—UiAutomator UiSelector API介绍之六

    对象搜索—类名与包名 一.类名属性定位对象 返回值 API 描述 UiSelector calssName(String className) 完整类名匹配 UiSelector calssNameM ...

  4. Android无线测试之—UiAutomator UiSelector API介绍之四

    四种匹配关系介绍 一.四种匹配关系介绍: 二.举例: 匹配字符串   0123456789 1.完全匹配: 0123456789 2.包含匹配: 45678.456.678 3.正则匹配: \d{10 ...

  5. Android无线测试之—UiAutomator UiSelector API介绍之八

    对象搜索—特殊属性.节点与资源ID 一.特殊属性定位对象相关API 返回值 API 描述 UiSelector checkableboolean val) 是否可选择,一般开关组件上具有checkab ...

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

    节点关系介绍 每一个布局文件都是一个严格的层次结构布局文件,只有对层次结构非常的了解,才能更好的搜索定位我们需要的主键元素 一.XML文档节点关系介绍 备注:查看节点关系主要使用UiAutomatro ...

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

    Android的布局与组件及组件属性介绍 一.布局: 1)线性布局:控价在线性方向上一次排列 2)表格布局:向表格一样有标准的行和列 3)相对布局:通过相对定位的方式让控件出现在布局的任何位置 4)帧 ...

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

    获取列表子元素 一.相关API介绍 返回值 API 描述 UiObject getChildByDescription(UiSelector childPattern, String text, bo ...

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

    UiCollection类介绍 一.UiCollection类说明 1)UiCollection类是UiObject类的子类,即UiObject类的所有方法都被UiCollection继承下来了,都可 ...

随机推荐

  1. 如何在Ubuntu上使用Glances监控系统

    导读 Glances 是一个用于监控系统的跨平台.基于文本模式的命令行工具.它是用 Python 编写的,使用 psutil 库从系统获取信息.你可以用它来监控 CPU.平均负载.内存.网络接口.磁盘 ...

  2. appium自动化,失败自动截图

    1.创建监听器类TestNGListener,重写onTestFailure方法,里面定义了 监听的driver ,截图文件路径和名称 package utils; import cases.Appi ...

  3. 转: HTTP Live Streaming直播(iOS直播)技术分析与实现

    http://www.cnblogs.com/haibindev/archive/2013/01/30/2880764.html HTTP Live Streaming直播(iOS直播)技术分析与实现 ...

  4. Hibernate单向“一对一”关联

    1. 基于外键关联的单向“一对一”关联其中指定many-to-one的unique="true",为单向“一对一”,不指定就是单向“多对一” <class name=&quo ...

  5. 同时安装office2016与visio2016的实现过程

    visio 2016安装问题 同时安装office2016与visio2016的实现过程 visio2016  but failed

  6. android-pull方式解析xml文件以及XML文件的序列化

    android解析XML ---------------------------基础要像磐石 在android平台上可以使用SAX.DOM和自带的Pull解析器解析xml文件,本文主要介绍使用pull ...

  7. 转: Your build settings specify a provisioning profile with the UUID, no provisioning profile was found

    http://blog.csdn.net/rbyyyblog/article/details/12220875 在Archive项目时,出现了“Your build settings specify ...

  8. c++ 类内部 使用 new delete

    低级错误: /** * @clusterNums 默认为5 分类数目 * @xyVector 处理后点云数据 x y顺序存储 */ int GMM::runGMM(int clusterNums, c ...

  9. chrome扩展(浏览器插件)开发实用教程

    原创文章,转载请注明出处. 作者:简体字丶冯; QQ:564372931 1.Chrome能搞这些事情 (1)     操作浏览器中打开的页面DOM 这能做什么哪?譬如说你想修改页面DOM(DOM是什 ...

  10. JDBC的常用API

    一.Connection接口: 1.createStatement():创建数据库连接 2.prepareStatement(Stringsql):创建预处理语句 3.prepareCall(Stri ...