Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作

拖拽和滑动

滑动

图片[1] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记

滚动

scroll:从一个元素滚动到另一个元素,直到页面自动停止

图片[2] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记

特点:滚动(有惯性存在,滚动下不按下第⼀个元素)

说明:针对两个元素进⾏操作

拖拽

drag_and_drop【推荐】:从一个元素滑动到另一个元素,第二个元素替代第一个元素原本屏幕上的位置

图片[3] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记

特点:拖拽(没有惯性,按下开始元素拖拽到指定元素位置)

说明:针对两个元素进⾏精准操作

手势操作

高级手势TouchAction:轻敲、按下、抬起、等待、长按、移动

图片[4] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记
# 导包
from appium.webdriver.common.touch_action import TouchAction
# 创建TouchAction对象
touch_action = TouchAction(driver)
l 调用高级手势对象提供所想执行的手势方法
touch_action.手势方法
l 执行手势
touch_action.perform()
图片[5] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记

手机操作

常用手机操作Api:获取分辨率、手机截图、获取和设置网络、发送键到设备、打开和关闭通知栏

1.获取分辨率和截图

图片[6] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记

2.获取和设置手机网络

图片[7] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记
# 1、查看当前⽹络类型
print("当前⽹络类型为:",driver.network_connection)
# 2、设置⽹络类型为⻜⾏模式
driver.set_network_connection(1)
print("设置之后的⽹络类型为:",driver.network_connection)
# 3、获取当前屏幕分辨率
print("当前屏幕分辨率为:",driver.get_window_size())
# 4、截图保存
driver.get_screenshot_as_file("./screen.png")

3.发送键到设备

图片[8] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记
i = 0
# 三次增⼤⾳量
while i < 3:
 driver.press_keycode(24)
 i += 1
sleep(2)
# 点击返回
driver.press_keycode(4) i = 0
# 两次减⼩⾳量
while i < 2:
 driver.press_keycode(25)
 i += 1
 
# 提示:部分模拟器没有按键操作效果

4.操作通知栏

图片[9] - Appium教程三: 高级API之拖拽和滑动、手势操作、手机操作 - 三酷猫笔记
# 打开通知栏
driver.open_notifications()
sleep(2)
# 查找信息并点击
driver.find_element(AppiumBy.XPATH,"//*[@text='应⽤宝.apk']").click()
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享