2. Appium Python Driver Api

使用 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:触摸操作

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