Android无线测试之—UiAutomator UiObject API介绍六
2024-09-01 20:01:09
手势操作
1、手势相关操作
2、相关API介绍
返回值 | API | 描述 |
boolean | performMultiPointerGesture(PointerCoords[]... touches) | 执行单手触控手势,可定义任意手势与形状 |
boolean | performTwoPointerGesture(Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps) | 执行任意两个手指触控手势,模拟两个手指手势 |
boolean | pinchIn(int percent, int steps) | 手势操作,两点向内收缩 |
boolean | pinchOut(int percent, int steps) | 手势操作,两点向外扩张 |
3、API应用举例
package com.test.uiobject; import java.io.File; import android.graphics.Rect;
import android.view.KeyEvent; 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="testGesTure";
androidId="1";
new UiAutomatorHelper(jarName,testClass,testName,androidId); } public void testGesTure() throws UiObjectNotFoundException{
//返回home页
UiDevice.getInstance().pressHome();
sleep(2000); //打开浏览器
UiObject browser=new UiObject(new UiSelector().text("Browser"));
browser.click();
sleep(2000); //将光标移动到URL输入框行尾,点击backspace键删除里面的URL
UiObject editText=new UiObject(new UiSelector().className("android.widget.EditText"));
editText.click();
sleep(1000);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_MOVE_END);
UiObject url=new UiObject(new UiSelector().text("Search or type URL"));
while(!url.exists()){
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_DEL);
}
sleep(2000); //输入www.baidu.com 点击enter打开百度首页
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_W);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_W);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_W);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_PERIOD);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_B);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_I);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_D);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_U);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_PERIOD);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_C);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_O);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_M);
sleep(500);
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_ENTER);
sleep(10000); //截屏,保存
UiDevice.getInstance().takeScreenshot(new File("sdcard/image1.png"));
sleep(2000); //进入图片所在的位置
UiDevice.getInstance().pressHome();
sleep(2000);
UiObject apps=new UiObject(new UiSelector().descriptionContains("Apps"));
apps.clickAndWaitForNewWindow();
UiObject fileManager=new UiObject(new UiSelector().text("File Manager"));
fileManager.clickAndWaitForNewWindow();
UiObject listView=new UiObject(new UiSelector().text("image1.png"));
listView.clickAndWaitForNewWindow(); //放大缩小图片
UiObject image=new UiObject(new UiSelector().resourceId("com.android.gallery:id/image"));
image.pinchIn(80, 50);
image.pinchOut(80, 50);
} }
Demo.java
最新文章
- JAVA基础中的注意点
- UNIX网络编程——getsockname和getpeername函数
- Content has been consumed
- 【Java每日一题】20161124
- Linux rpm 查询
- 【Git】笔记5 分支管理2
- Ajax提交整个表单
- centos下整合PagerDuty、nagios初探(on-call尝鲜和体验)
- @Mybatis传多个参数
- 嵌套结构使用:struc1-struc2-XXX
- python2 编码问题详解
- 【LR】版本问题
- HTML5之部分显示
- socket基础(二)
- Multicast on Openstack
- RDLC(Reportview)报表
- setsockopt()和getsockopt()函数参数
- 在openjdk8下看Unsafe源码
- dicom错误解决
- 防Bug笔记
热门文章
- Thread.sleep(0)的作用
- jquery 设置checkbox选中 和获取选中值
- ASP.NET CORE 学习之原生DI实现批量注册
- 折腾docker安装笔记
- .Net程序员面试 每个人都应知道篇 (回答Scott Hanselman的问题)
- Impala中多列转为一行
- Atitit.100% 多个子元素自适应布局属性
- Sublime Text 2/3如何支持中文GBK编码(亲测实现)
- [gj]三国攻势图
- Swift中UIView类方法(animateWithDuration)的使用