【Appium+Python】进行手机操作的方法+使用手机物理键

在编写UI自动化测试脚本的时候,有时候定位页面元素去操作手机的方法可能会比较麻烦。例如,也许你只是想要一个返回效果,去定位页面返回后还要进行一系列定义、调用点击函数,此时直接使用手机的物理返回键就要方便许多。Appium可利用selenium去操作手机。



先记录自己辛苦百度之后写出来的东西:

记录一、长按某个元素的方法

首先导入 TouchAction 包:from appium.webdriver.common.touch_action import TouchAction

然后编写长按函数:

wait里的时间单位是毫秒,长按N毫秒释放




以下是总结的只是碎片:

                                         手机操作方法


收起键盘:driver.hide_keyboard()

启动Activity参数(包名,activity名字):driver.start_activity('com.example.android.apis', '.Foo')

打开通知栏(打开下拉通知栏):driver.open_notifications()

检查应用是否已经安装(包名):driver.is_app_installed('com.example.android.apis')

安装应用(路径):driver.install_app('path/to/my.apk')

删除应用(包名):driver.remove_app('com.example.android.apis')

模拟设备摇晃:driver.shake()

关闭应用:driver.close_app()

重置(相当于卸载后重装):driver.reset()

获取应用的字符串:driver.app_strings

获取当前Activity:driver.current_activity

滑动屏幕(开始x,y坐标,滑动到的X,y坐标,持续时间ms):driver.swipe(startx=75, starty=500, endx=75, endy=0, duration=800)

双指向内移动缩小屏幕:driver.pinch(element=el)

双指往外移动来放大屏幕:driver.zoom(element=el)

从设备中拉出文件:driver.pull_file('Library/AddressBook/AddressBook.sqlitedb')

把文件放到设备中:

data = "some data for the file"

path = "/data/local/tmp/file.txt"

driver.push_file(path, data.encode('base64'))



                                          使用手机物理键


一句代码:driver.keyevent()        括号里填入的是手机物理按键的数字代号

       driver.press_keycode()        括号里填入的是键盘按键的数字代号

手机物理键数字代码
键盘按键数字代号


作者:失语失芯不失梦
链接:https://www.jianshu.com/p/530a01d17c1c
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

你可能感兴趣的:(技术)