• Appium 滑动界面swipe用法


     

    Appium 滑动API:Swipe(int start x,int start y,int end x,int y,duration)

    解释:int start x-开始滑动的x坐标,

      int start y -开始滑动的y坐标。

       int end x -结束点x坐标,

       int end y -结束点y坐标。

       duration 滑动时间(默认5毫秒);

    代码:

    // 分辨率

    int widht = driver.manage().window().getSize().width;

    int height = driver.manage().window().getSize().height;

    for(int i = 0; i<3; i++){

    // 向左滑动!

    driver.swipe(widht*6/7, height/2, widht/7, height/2, 2);

    Python-appium手机自动测试如何实现滑动呢,在webdriver 的api中只提供了指定两个坐标的滑动,但不同的手机分辨率不同,这样写出来的自动化脚本兼容性就不是那么好了。。那么怎么实现滑动呢,仔细看了下webdriber中的方法,发现有个方法get_window_size() ,这个方法可以获得手机的宽度和高度,这样我们就可以实现按屏幕比率滑动了。。具体方法如下:

    #获取屏幕宽和高

     def getSize(self):

            x=self.driver.get_window_size()['width']
            y=self.driver.get_window_size()['height']
            return(x,y)

        

    #向左滑动

        def swipeLeft(self,t):
            l=self.getSize()
            x1=int(l[0]*0.75)
            y1=int(l[1]*0.5)
            x2=int(l[0]*0.25)
            self.driver.swipe(x1,y1,x2,y1,t)

            

    #向右滑动

        def swipeRight(self,t):
            l=self.getSize()
            x1=int(l[0]*0.25)
            y1=int(l[1]*0.5)
            x2=int(l[0]*0.75)
            self.driver.swipe(x1,y1,x2,y1,t)

            

    #向上滑动

        def swipeUp(self,t):
            l=self.getSize()
            x1=int(l[0]*0.5)
            y1=int(l[1]*0.75)
            y2=int(l[1]*0.25)

            self.driver.swipe(x1,y1,x1,y2,t)

    #向下滑动

        def swipeDown(self,t):
            l=self.getSize()
            x1=int(l[0]*0.5)
            y1=int(l[1]*0.25)
            y2=int(l[1]*0.75)
            self.driver.swipe(x1,y1,x1,y2,t)

    下面贴上自己稍稍修改的左滑脚本:

    #获取屏幕宽高

    def getSize():
      x=driver.get_window_size()['width']
      y=driver.get_window_size()['height']
      return (x,y)


    #向左滑

    def swipeLeft(n,t):    #n代表滑动次数,t代表滑动时间
      l=getSize()        #调用getSize()
      x1=int(l[0]*0.75)
      y1=int(l[1]*0.5)
      x2=int(l[0]*0.25)
      for i in range(0,n):     #for循环,控制滑动次数
        time.sleep(3)
        driver.swipe(x1,y1,x2,y1,t)

    swipeLeft(4,200)     #调用swipeLeft()

  • 相关阅读:
    activiti实战系列之动态表单 formService 自定义变量类型
    js向一个数组中插入元素的几个方法-性能比较
    Mac系统安装和配置tomcat步骤详解
    Spring注解之@validated的使用
    Spring注解之@Lazy注解
    centos命令行系列之升级glibc到
    docker实战系列之docker 端口映射错误解决方法
    centos命令行系列之centos6防火墙的关闭以及开启
    docker实战系列之搭建rabbitmq
    运营型模型
  • 原文地址:https://www.cnblogs.com/jiuyigirl/p/7120051.html
Copyright © 2020-2023  润新知