Appium元素事件操作API

Appium元素事件操作API

  • 1.前置代码

    from appium import webdriver
    # server 启动参数
    desired_caps = {}
    # 设备信息
    desired_caps['platformName'] = 'Android'
    desired_caps['platformVersion'] = '5.1'
    desired_caps['deviceName'] = '192.168.56.101:5555'
    # app的信息
    desired_caps['appPackage'] = 'com.android.settings'
    desired_caps['appActivity'] = '.Settings'

    # 声明我们的driver对象
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
  • 2.swip滑动事件

      ⚠️从一个坐标位置滑动到另一个坐标位置,只能是两个点之间的滑动
      方法:swipe(start_x, start_y, end_x, end_y, duration=None)
      参数:
          1.start_x:起点X轴坐标
          2.start_y:起点Y轴坐标
          3.end_x:  终点X轴坐标
          4.end_y,: 终点Y轴坐标
          5.duration: 滑动这个操作一共持续的时间长度,单位:ms
    
      业务场景:
          1.进入设置
          2.从坐标(148,659)滑动到坐标(148,248)
    
      代码实现:
          # 滑动没有持续时间
          driver.swipe(188,659,148,248)
          # 滑动持续5秒的时间
          driver.swipe(188,659,148,248,5000)
    
  • 3.scroll滑动事件

      ⚠️ 从一个元素滑动到另一个元素,直到页面自动停止
      方法:scroll(origin_el, destination_el)
      参数:
          1.origin_el:滑动开始的元素
          2.destination_el:滑动结束的元素
    
      业务场景:
          1.进入设置页
          2.模拟手指从存储菜单位置 到 WLAN菜单位置的上滑操作
    
      代码实现:
          # 定位到存储菜单栏
          el1 = driver.find_element_by_xpath("//*[contains(@text,'存储')]")
          # 定位到WLAN菜单栏
          el2 = driver.find_element_by_xpath("//*[contains(@text,'WLAN')]")
          # 执行滑动操作
          driver.scroll(el1,el2)
    
  • 4.drag拖拽事件
      ⚠️ 从一个元素滑动到另一个元素,第二个元素替代第一个元素原本屏幕上的位置
      方法:drag_and_drop(origin_el, destination_el)
      参数:
          1.origin_el:滑动开始的元素
          2.destination_el:滑动结束的元素
    
      业务场景:
          1.进入设置页
          2.模拟手指将存储菜单 滑动到 WLAN菜单栏位置
    
      代码实现:
          # 定位到存储菜单栏
          el1 = driver.find_element_by_xpath("//*[contains(@text,'存储')]")
          # 定位到WLAN菜单栏
          el2 = driver.find_element_by_xpath("//*[contains(@text,'WLAN')]")
          # 执行滑动操作
          driver.drag_and_drop(el1,el2)
发布了240 篇原创文章 · 获赞 77 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/dpl12/article/details/104142795