Appium常用定位脚本
1.adb devices :检测已连接设备列表
2.adb connect 127.0.0.1:5555 连接雷电模拟器手机
adb connect 127.0.0.1:7555 连接mumu模拟器手机
3.id定位
driver.findElementById(“id”).click();(一般优先id,获取准确且查找较快)
例如:driver.findElementById(“com.jingdong.app.mall:id/btb”).click();
id获取方法:利用uiautomater截屏,获取resource id;
id元素中有多个则用elements.get……..
driver.findElementsById("name.gudong.translate:id/title").get(0).click();
4.复合定位XPath
driver.findElementByXPath(“//类名[@text=’’][@index=’’][@content-desc=’’]”).click();
例如:
driver.findElementByXPath("//android.widget.TextView[@text=” ’’] ").click();
driver.findElementByXPath("//android.widget.TextView [@index=” ’’] ").click();
driver.findElementByXPath("//android.widget.TextView [@content-desc=’’]").click();
5.坐标定位:
导入包名:import io.appium.java_client.TouchAction;
定义对象:TouchAction touch = new TouchAction(driver);
常用方法:
touch.press(980,1040).release().perform();//坐标(980,1040)
Appium 移动端自动化测试,触摸(TouchAction) 与多点触控(MultiAction)(1)_appium touchaction 引入什么包-CSDN博客
6.模拟输入操作(只需把click方法改成sendKeys)
driver.findElementById("").sendKeys("");
7.清除输入框内容
driver.findElementById("").clear("");
8.强制返回
driver.sendKeyEvent(AndroidKeyCode.BACK);
9.确认
driver.sendKeyEvent(AndroidKeyCode.ENTER);
10.模拟用户滑动
driver.swipe(600, 1600, 600, 1000, 1000);
(600,1600)、(600,1000)是获取的两个坐标,最后的1000是时间间隔1000ms,输入两个坐标值的X轴数值相同则是上下滑动屏幕,Y轴数值相同则是左右滑动屏幕
11. 休眠
Thread.sleep(1000)//时间单位毫秒