zl程序教程

您现在的位置是:首页 >  其他

当前栏目

python-appium-触摸事件(模拟触屏操作)

2023-03-20 14:59:40 时间

        TouchAction 类将一系列的动作放在一个链条中,然后将该链条传递给服务器。服务器接收到该链条后,解析各个动作,逐个执行。

一、方法

        短按: press()
        长按: long_press()
        点击: tap()
        移动到: move_to(x,y),x,y相对于上一个坐标的移动距离(偏移量)
        等待: wait()
        释放: release(),长按一定要加释放,否则会一直按住不放开
        执行: perform() ,必须添加,否则不会执行
        取消: cancel()

二、思路

        (1)导包from appium.webdriver.common.touch_action import TouchAction

        (2)定位元素element,实例化触摸事件类 action = TouchAction(driver) 在元素上长按action.long_press(element).release().perform()

示例:

# 登录
driver.find_element_by_id('com.tal.kaoyan:id/login_email_edittext').send_keys("lilghost213")
driver.find_element_by_id('com.tal.kaoyan:id/login_password_edittext').send_keys("lilghost123")
# 点击【我知道了】
TouchAction(driver).tap(x=398, y=512).perform()
sleep(2)
# 长按在【论坛】
luntan = driver.find_element_by_id('com.tal.kaoyan:id/mainactivity_button_forum')
TouchAction(driver).long_press(luntan, duration=3000).release().perform()
sleep(2)
# 屏幕向上滑动
TouchAction(driver).press(x=379, y=1043).move_to(x=0, y=-60).perform()