Android无线测试之—UiAutomator UiSelector API介绍之五
对象搜索—文本与描述
一、文本属性定位对象:
返回值 | 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介绍之五的更多相关文章
- Android无线测试之—UiAutomator UiSelector API介绍之一
一. UiSelector类介绍: 1) UiSelector类说明: UiSelector代表一种搜索条件,可以在当前界面上查询和获取特定元素的句柄,当找到多余一个的匹配元素,则返回布局层次结构上第 ...
- Android无线测试之—UiAutomator UiSelector API介绍之七
对象搜索—索引与实例 一.索引与实例说明: 1)index:在同一级中的编号,在兄弟类中组件的编号,index从0开始 2)instance:同一个布局中同一类组件的编号,instance从0开始 二 ...
- Android无线测试之—UiAutomator UiSelector API介绍之六
对象搜索—类名与包名 一.类名属性定位对象 返回值 API 描述 UiSelector calssName(String className) 完整类名匹配 UiSelector calssNameM ...
- Android无线测试之—UiAutomator UiSelector API介绍之四
四种匹配关系介绍 一.四种匹配关系介绍: 二.举例: 匹配字符串 0123456789 1.完全匹配: 0123456789 2.包含匹配: 45678.456.678 3.正则匹配: \d{10 ...
- Android无线测试之—UiAutomator UiSelector API介绍之八
对象搜索—特殊属性.节点与资源ID 一.特殊属性定位对象相关API 返回值 API 描述 UiSelector checkableboolean val) 是否可选择,一般开关组件上具有checkab ...
- Android无线测试之—UiAutomator UiSelector API介绍之三
节点关系介绍 每一个布局文件都是一个严格的层次结构布局文件,只有对层次结构非常的了解,才能更好的搜索定位我们需要的主键元素 一.XML文档节点关系介绍 备注:查看节点关系主要使用UiAutomatro ...
- Android无线测试之—UiAutomator UiSelector API介绍之二
Android的布局与组件及组件属性介绍 一.布局: 1)线性布局:控价在线性方向上一次排列 2)表格布局:向表格一样有标准的行和列 3)相对布局:通过相对定位的方式让控件出现在布局的任何位置 4)帧 ...
- Android无线测试之—UiAutomator UiScrollable API介绍三
获取列表子元素 一.相关API介绍 返回值 API 描述 UiObject getChildByDescription(UiSelector childPattern, String text, bo ...
- Android无线测试之—UiAutomator UiCollection API介绍
UiCollection类介绍 一.UiCollection类说明 1)UiCollection类是UiObject类的子类,即UiObject类的所有方法都被UiCollection继承下来了,都可 ...
随机推荐
- [Typescript] Make TypeScript Class Usage Safer with Strict Property Initialization
By setting the strictPropertyInitialization flag in the .tsconfig file, TypeScript will start throwi ...
- perl学习笔记——字符串和排序
用index查找子字符串 查找子字符串在主字符串中的相对位置.如: $where=index($big,$small); 注意index是从0开始的,如果查找不到就会返回-1: 加入第三个参数来指定开 ...
- 右键添加在siblime中打开选项
siblime text安装完成之后没有右键打开的快捷方式,对于开发者来说每次用siblime打开文件比较繁琐. 下面教程可以让大家解决这个问题 首先点击开始--运行,输入regedit,(win7系 ...
- lodash 检查值是否存在 includes
_.includes(collection, value, [fromIndex=0]) 检查 值 是否在 集合中,如果集合是字符串,那么检查 值 是否在字符串中. 其他情况用 SameValueZe ...
- javascript获取日期的年,月,日
var date = new Date(strTime); return date.getFullYear()+"-"+(date.getMonth()+1)+"-&qu ...
- 简单模拟javaScript面向对象
<html> <head> <script type="text/javascript"> if (!Object.create) { Obje ...
- Redis 配置文件及命令详解
==基本配置 daemonize no 是否以后台进程启动 databases 16 创建database的数量(默认选中的是database 0) save 900 1 #刷新快照到硬盘中,必须满足 ...
- sql中update,alter,modify,delete,drop的区别和使用(整理)
关于update和alter: 百度知道上关于update和alter有一个很形象的总结: 一个表有很多字段,一个字段里有很多数据. 一个家有很多房间,一个房间里有很多家具. update是用来将衣柜 ...
- 关于SVN提交强制加入注释
一.摘要 场景: 在这次开发项目过程中,团队中总是有人忘记添加注释. 问题: 1:其他成员不知道你提交是什么代码, 给回滚操作带来很多不必要的麻烦. 2:这个工作需要有一个人天天提醒大家在提交代码的时 ...
- should + mocha 搭建简单的单元测试环境
快速搭建测试环境,详细用法请百度和访问两者的github mocha: http://mochajs.org/ should: https://github.com/shouldjs/should.j ...