appium 常用方法总结
阅读原文时间:2023年07月10日阅读:2

1、appium启动任意的Activity

在手机上启动任意的Activty用driver.start_activity方法,如果启动的Activity不是测试应用程序的一部分,它也将启动该活动的应用程序。

具体的方法如下:

driver.start_activity('com.foo.app', '.MyActivity')

2、检索应用程序字符串

driver.app_strings方法返回应用程序的字符串

strings = driver.app_strings

3、向安卓设备发送一个按键事件

driver.press_keycode(3)

4、查看当前的Avtivty

activity = driver.current_activity assertEquals('.ApiDemos', activity)

5、锁定屏幕

driver.lock(5)

6、将 app 置于后台,把当前应用放到后台去

driver.background_app(5)

7、收起键盘

driver.hide_keyboard()

8、启动 Activity

在当前应用中打开一个 activity 或者启动一个新应用并打开一个 activity 。 只能在 Android 上使用

driver.start_activity('com.example.android.apis', '.Foo')

9、打开通知栏 (Notifications),打开下拉通知栏 只能在 Android 上使用

driver.open_notifications()

10、检查应用是否已经安装

driver.is_app_installed('com.example.android.apis')

11、安装应用

driver.install_app('path/to/my.apk')

12、删除应用

driver.remove_app('com.example.android.apis')

13、模拟设备摇晃

driver.shake()

14、关闭应用

driver.close_app()

15、启动 (Launch)

根据服务关键字 (desired capabilities) 启动会话 (session) 。请注意这必须在设定 autoLaunch=false 关键字时才能生效。

这不是用于启动指定的 app/activities ,你可以使用 start_activity 做到这个效果,这是用来继续进行使用了 autoLaunch=false 关键字时的初始化 (Launch) 流程的。

driver.launch_app()

16、重置 (Reset)

driver.reset()

17、可用上下文 (context)

列出所有的可用上下文

翻译备注:context可以理解为 可进入的窗口 。例如,对于原生应用,可用的context和默认context均为NATIVE_APP

driver.contexts

18、当前上下文 (context)

driver.current_context

19、切换到默认的上下文 (context)

将上下文切换到默认上下文

driver.switch_to.context(None)

20、应用的字符串 (App Strings)

获取应用的字符串

driver.app_strings

21、按键事件 (Key Event)

给设备发送一个按键事件

driver.keyevent(176)

22、触摸动作(TouchAction) / 多点触摸动作(MultiTouchAction)

生成触摸动作的接口。这部分文档很快将会补充更多的内容进来。

action = TouchAction(driver)

action.press(element=el, x=10, y=10).release().perform()

23、滑动(Swipe)

模拟用户滑动

driver.swipe(start=75, starty=500, endx=75, endy=0, duration=800)

24、捏 (Pinch)

捏屏幕 (双指往内移动来缩小屏幕)

driver.pinch(element=el)

25、放大 (Zoom)

放大屏幕 (双指往外移动来放大屏幕)

driver.zoom(element=el)

26、滑动到 (Scroll To)

滑动到某个元素。

todo: python

27、拉出文件 (Pull File)

从设备中拉出文件

driver.pull_file('Library/AddressBook/AddressBook.sqlitedb')

28、推送文件(Push file)

推送文件到设备中去

driver.pull_file('Library/AddressBook/AddressBook.sqlitedb')