Appium常用API
appium文档
一、 app操作
1. install_app()
安装app
driver.install_app("app包路径")
2. remove_app() 卸载app
driver.remove_app("app包名")
3. close_app() 关闭app
driver.close_app()
4. launch_app() 在设备上启动测试中的应用程序,官方描述:如果被测试应用程序(AUT)已关闭或后台运行,它将启动它。如果AUT已经打开,它将对其进行后台处理并重新启动它。
driver.launch_app()
5. background_app() 将app置于后台,需要指定将应用置于后台的时间,默认时间单位秒
driver.background_app(30)
6. is_app_installed() 检查应用是否已经安装,需要指定应用包名
driver.is_app_installed("app包名")
7. reset() 重置app,类似清除app缓存
driver.reset()
二、 上下文操作
1. contexts 获取所有上下文
dirver.contexts
2. current_context 获取当前的上下文
driver.current_context
3. switch_to_context() 切换上下文
driver.switch_to_context('NATIVE_APP') # 原生app
三、 按键操作
1. send_keys() 输入内容
driver.find_element_by_id('id').send_keys("test")
2. keyevent() 模拟按键, 发送一个按键码,一次只能输入一个字符。按键码对应值
# 输入字符串138
driver.keyevent(8) # 1
driver.keyevent(10) # 3
driver.keyevent(15) # 8
四、 触摸操作
TouchAction 类提供了一组实现触摸动作的方法,使用时需要倒入
from appium.webdriver.connon.touch_action import TouchAction#
1. tap() 点击 对一个元素或控件执行点击操作
tap(self, element=None, x=None, y=None, count=1)
# 点击一个元素或坐标点(x,y)
# count用于控制点击次数,默认1次
2. press() 按压 按压一个元素或坐标点
press(self, element=None, x=None, y=None)
3. long_press() 长按 长按一个元素或坐标点
long_press(self, element=None, x=None, y=None, duration=1000)
# duration=1000 按压时间1秒
4. move_to() 移动 从上一个坐标点移动到新的元素或坐标点
move_to(self, element=None, x=None, y=None)
5. wait() 暂停 暂停脚本的执行,单位为毫秒
wait(1000)# 暂停1秒
6. release() 释放 结束的行动取消屏幕上的指针
release()
7. perform() 执行 执行的操作发送到服务器的命令操作
perform()
实例
# 设置九宫格
TouchAction(driver).press(x=385, y=1122).wait(2000) \
.move_to(x=385, y=1468).wait(1000) \
.move_to(x=385, y=1820).wait(1000) \
.move_to(x=720, y=1820).wait(1000) \
.move_to(x=1049, y=1820).wait(1000) \
.release().perform()
六、 高级api
1. Screenshot 截图 以文件形式获取当前窗口屏幕截图
driver.save_screenshot("test.png")
以二进制数据形式获取当前窗口屏幕截图
driver.get_screenshot_as_png()
以base64编码的形式获取当前窗口屏幕截图
driver.get_screenshot_as_base64()
截图某个元素
driver.find_element(By.XPATH, "//*[@text='交易']").screenshot("test.png")
2. source 获取当前页面源代码
driver.page_source
3. rotate 设置屏幕方向 设置横屏
driver.orientation = "LANDSCAPE"
设置竖屏
driver.orientation = "PORTRAIT"
获取当前设备/浏览器方向
driver.orientation()
4. Geolocation 地理位置 获取当前的地理位置
driver.location()
设置当前的地理位置 (只支持模拟器)
driver.set_location(49, 123, 10)
参数:
纬度number所需的地理位置纬度
经度number所需的地理位置经度
高度number所需的地理位置高度(可选)
5. Logs 日志 获取可用日志类型的列表
driver.log_types()
获取给定日志类型的日志
# 获取driver日志
driver.get_log('driver')
6. Settings 设置 更新设备上的当前设置 Settings API
driver.update_settings({"sample": "value"}))
检索设备上的当前设置
driver.get_settings
7. Performance Data 性能数据 获取可用性能类型的列表,如cpu,内存,网络流量和电池
dirver.get_performance_data_types()
获取给定类型的系统状态信息,如cpu,内存,网络流量和电池
p = driver.get_performance_data("my.app.package", "cpuinfo", 5)
参数:
包名字 string应用程序的包名称
数据类型string想要读取的系统状态的类型。它应该是受支持的性能数据类型之一。
data_read_timeoutnumber尝试读取次数(可选)
8. Recording Screen录屏 开始录制屏幕 (只支持安卓8.0以上)
driver.start_recording_screen()
【Appium常用API】停止录制屏幕
driver.stop_recording_screen()
推荐阅读
- 2020-04-07vue中Axios的封装和API接口的管理
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 数组常用方法一
- 【译】Rails|【译】Rails 5.0正式发布(Action Cable,API模式等)
- 常用git命令总结
- java|java 常用知识点链接
- c#常用网址记录
- 5|5 个 PPT 常用快捷键带你从此走向高效
- Python|Win10下 Python开发环境搭建(PyCharm + Anaconda) && 环境变量配置 && 常用工具安装配置
- iOS常用第三方库