您的位置:首页 > 移动开发

Appium 测试,实现上下、左右滑动页面【Android,iOS 已验证】

2017-04-01 16:34 537 查看
Appium 测试,实现上下、左右滑动页面

         原文:http://blog.csdn.net/liuy5277/article/details/48543225    作者:liuy5277 

         特别说明:
本文只适用于Appium 1.6.4及以下 ,请注意!  

        本人对原文做了部分修改,4个方法改成静态方法,这样使用的时候,不用new 

         说明: 这个方法是Android、iOS通用的,不过iOS需要修改下
AndroidDriver 为 IOSDriver

         设计一个类 SwipeTo,4个静态方法(swipeToUp, swipeToDown, swipeToLeft, swipeToRight)代码如下:

package com.cheersqa;

public class SwipeTo {
public static void swipeToUp(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
driver.swipe(width / 2, height * 3/ 4, width /2 , height /4, during);
}

public static void swipeToDown(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
System.out.println(width );
System.out.println(height);
driver.swipe(width / 2, height / 4, width /2 , height * 3 /4, during);
}

public static void swipeToLeft(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
driver.swipe(width * 3 / 4 , height / 2, width / 4, height / 2, during);
}

public static void swipeToRight(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
driver.swipe(width/4, height/2, width * 3 / 4, height / 2, during);
}

}


Appium在测试的时候,使用如下:

上滑 SwipeTo.swipeToUp(driver, 1000)

下滑 SwipeTo.swipeToDown(driver, 1000)

左滑 SwipeTo.swipeToLeft(driver, 1000)

右滑 SwipeTo.swipeToRight(driver, 1000)

左滑、右滑的补充说明:

有时候,上述 左滑、右滑 方法滑动幅度太小,针对有的app不能正确切换到相应的页面,滑动幅度需要调整下,如:

public static void swipeToLeft(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
driver.swipe(width -10, height / 2, width / 4, height / 2, during);
}

public static void swipeToRight(AndroidDriver driver, int during){
int width = driver.manage().window().getSize().width;
int height = driver.manage().window().getSize().height;
driver.swipe(10, height / 2, width* 3/4+10, height / 2, during);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: