1.id
appium里获取resource-id
但是1)有可能id重复,2)id开发人员没有取值
2.之前文章中,我在自动化驾考宝典apk的时候就遇到过定位地点的时候,id 没有取值或者id是重复的,无法使用id定位,我挡视使用的是xpath,也可以使用如下方法:
把相同id数值放在集合中,再通过集合索引去定位
举例:
List<WebElement> listElements=androidDriver.findElementsById("id")
listElements.get(2).click();
注意:list这里引用为java.util包
3.text这个方法仅仅支持appium1.5版本之前的
anroidDriver.findElement(by.name("师资团队")
最新版本不知道此api,
需要hi用原生uiautomator自动化引擎
androidDriver.findElementByAndroidUIAutomator("new uiSelector().text(\"师资团队\")")
注意:这里支持jre-1.8,不过不是的话,右击左边的菜单栏,bulid path
4.class不推荐,因为很少唯一
5.xpath
androidDriver.findElementByXPath("//android.wedget.TextView[@text=‘长春‘]").click();
6.accessibility id
在UIAutomatorViewer并没有此属性,对应的是content-desc属性
7.每次在测试运行app的时候,我都是手动清楚之前的数据,很麻烦,在脚本里写一行清除数据
//noRest:不清楚掉应用的数据启动测试。true:清除,false:清除
desiredCapabilities.setCapability("noReset","true");
8.坐标定位不推荐
设置-》关于手机-》连续5此点击版本号-》进入开发者选项-》勾选指针