使用 Appium Python Client进行测试。https://github.com/appium/python-client
python查看appium webdriver help.
$ from appium import webdriver
$ help(webdriver)
PACKAGE CONTENTS
common (package)
connectiontype
errorhandler
mobilecommand
switch_to
webdriver
webelement
Api: 元素定位
说明 |
用法 |
id定位 |
driver.find_element_by_id(element) |
xpath定位 |
driver.find_element_by_xpath(element) |
Api: 应用安装卸载
说明 |
用法 |
安装应用 |
driver.install_app('/path/xxxxxx.apk') |
检查应用是否安装 |
driver.is_app_installed("packagename") |
卸载应用 |
driver.remove_app('packagename.apk') |
Api: 应用操作相关
说明 |
用法 |
启动应用 |
driver.launch_app() |
关闭应用 |
driver.close_app() |
重置应用 |
driver.reset() |
把当前应用放到app后台 |
driver.background_app(10) |
打开通知栏 |
driver.open_notifications() |
打开通知栏功能只有Android可用
Api: 文件操作相关
说明 |
用法 |
从设备拉出文件 |
driver.pull_file('path/filename') |
向设备推送文件 |
driver.push_file(path,data.encode('base64')) |
截图 |
driver.get_screenshot_as_file('login.png') |
Api: 屏幕、手势操作相关
说明 |
用法 |
锁定屏幕 |
drvier.lock(10) |
滑动屏幕 |
driver.swipe(75,500,75,0,0.8) |
捏 |
driver.pinch(element=e1) |
屏幕放大 |
driver.zoom(element=e1) |
长按 |
long_press() |
短按 |
press() |
点击 |
tap() |
移动到 |
move_to() |
执行手势操作 |
perform() |
释放操作 |
release() |
等待 |
wait() |
TouchAction:触摸操作
.. code-block:: python
from appium.webdriver.common.touch_action import TouchAction
# 录制小视频的时候,长按录制10s
action = TouchAction(driver)
action.long_press(element,None,None,10000).release().perform()
Api: 键盘操作相关
说明 |
用法 |
在ios上收起键盘 |
driver.hide_keyboard() |
发送键盘事件 |
driver.keyevent(176) |
摇晃设备 |
driver.shake() |
Api: 应用上下文
说明 |
用法 |
列出所有的可用上下文 |
driver.contexts |
列出当前上下文 |
driver.current_context |
将上下文切换到默认上 |
driver.switch_to.context(None) |
应用的字符串 |
driver.app_strings |
Api: Activity相关
说明 |
用法 |
获得activity |
driver.current_activity |
本文作者原创,禁止转载。