做测试时最好不要装手机助手,不然经常会抢5037 端口
1. 根据text内容xpath 定位 有text时
d=driver.find_element_by_xpath("//android.widget.EditText[contains(@text,/'手机号/邮箱/用户名'/)]")
但是text不固定,例如登录页面默认保存了用户名,此时的text就是历史用户名
2.根据uiautomator定位 text唯一时
d=driver.find_element_by_android_uiautomator('new UiSelector().text(\"yy")')
d.click()
d.send_keys('aaa')
3,根据uiautomator定位没有/des/text/ classname不唯一 情况
d1 = driver.find_elements_by_android_uiautomator('new UiSelector().className(\"android.widget.EditText").clickable(true)')
dd0=d1[1]
dd0.click()
dd0.send_keys('123456')
4.根据contentDescription 定位 但首页有3个相同的描述
d2=driver.find_elements_by_accessibility_id("敢爱邦")
dd2=d2[2].click()
5.可定位属性太少时,可使用swipe快速滑动一秒作为点击操作
#x,y是手机分辨率
x=driver.get_window_size()['width']
y=driver.get_window_size()['height']
print x,y
driver.swipe(272,500,272,500,1)
6.两种划屏的方式 1.touuchAction 2.swipe 会报错但实际运行成功需要捕获异常
TouchAction(driver).press(x=153,y=620).move_to(x=550,y=620).release().perform()
从左到右滑动
try:
driver.swipe(153,620,550,620)
except:
pass
使用屏幕的分辨率实现百分比的上滑
try:
driver.swipe(x/2,y*3/4,x/2,y/4,0)
except:
print "滑动成功"
7.返回键 输入按键对应码。
driver.keyevent(4)
8.