查询函数
1. findElement(s)ByName
在 Android 中基本没用。Android UI 没有 Name 这个属性。有说可以使用 text 值获取。但我并没有成功
2. findElement(s)ByClassName
通过类名来获取元素,用法如下:
item_list = dr.find_elements_by_class_name("android.widget.LinearLayout")
item_list[2].click()
3. findElementById
通过 resource_id 来获取元素,每个 Activity 中都是唯一的,用法如下
t = dr.find_element_by_id("com.tencent.mm:id/f7")
t.send_keys(wechatId)
4. findElement(s)ByAccessbiltiyId
在 Android 上 AccessbilityID 实际就是 contentDescription 。这个属性是为了方便视力受损人士使用手机所设置。开启 TTS 后系统会朗读相关控件的 contentDescription。
5. findElement(s)ByXPath
通过 XML Path 描述来寻找元素。我没有成功的获取到,可能是 XPath 写的有问题。
s = dr.find_element_by_xpath("//android.widget.TextView[contains(@text,'搜索')]")
s.click()
6. findElementByAndroidUIAutomator
通过 UIAutomator 的选择器来获取元素。因为 Appium 在 Android 上实际是调用的 UIAutomator,所以可以通过 UIAutomator 的选择器来选择元素。
el = dr.find_element_by_android_ui_automator("new UiSelector().text(\"搜索\")")
el.click()
控件操作:
1、输入
send_keys()
2、点击
单击:click()
3、滑动
driver.swipe(x1, y1, x2, y2,duration), x1 y1为起始位置 x2 y2为结束位置,duration 滑动时间
4、缩放
pinch() 默认缩小一半
zoom() 默认放大一倍
5、触摸
long_press() 长按
press() 短按
release() 释放
wait() 等待
cancel() 取消
perform() 执行
6、reset() 重置应用,如首次登录app的导航页
7、is_app_installed() 判断app是否安装,返回布尔值
8、install_app()
安装app
9、remove_app() 卸载app
10、close_app() 关闭app
来源:CSDN
作者:demon119
链接:https://blog.csdn.net/demon119/article/details/103714030