標籤:++ ring height .com 列表 相簿 nbsp img 測試
Appium處理滑動方法是swipe
滑動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毫秒)。
螢幕左上方為起點,座標為(0,0),起點往右為Y軸,起點以下為X軸
來說,登入按鈕起點和終點座標分別為(63,1716)和(432,1860)
讓apppium 更好的相容不同解析度的裝置,在執行滑動前先擷取螢幕的解析度
1.螢幕解析度
按照螢幕解析度為終點座標,比如你手機解析度1080*1920,那麼該手機座標系的終點 是(1080*1920)
2.根據代碼得到
int width = driver.manage().window().getSize().width; int height = driver.manage().window().getSize().height;
現在介紹下自訂方法內的參數
driver(就是把appiumdriver對象傳進來)
during(這裡是填寫毫秒數,這裡的 毫秒數越小 滑動的速度越快~ 一般設定在500~1000,如果你想快速滑動 那就可以設定的更加小)
num(是只滑動的次數,如相簿多張圖片翻頁測試什麼的滑動或者滑動到列表底部。就直接輸入次數就行了)
gosleep()是自己的封裝了Thread.sleep方法,不懂的見以下連結 http://www.cnblogs.com/bamu/archive/2013/03/14/2959663.html
上滑 swipeToUp
public static void swipeToUp(AppiumDriver<WebElement> driver,int during, int num) { int width = driver.manage().window().getSize().width; int height = driver.manage().window().getSize().height; for (int i = 0; i < num; i++) { driver.swipe(width / 2, height * 3 / 4, width / 2, height / 4, duri goSleep(3); } }
swipeToDown下拉
public static void swipeToDown(AppiumDriver<WebElement> driver,int during, int num) { int width = driver.manage().window().getSize().width; int height = driver.manage().window().getSize().height; System.out.println(width); System.out.println(height); for (int i = 0; i < num; i++) { driver.swipe(width / 2, height / 4, width / 2, height * 3 / 4, during); goSleep(3); } }
swipeToLeft向左滑動
public static void swipeToLeft(AppiumDriver<WebElement> driver,int during, int num) { int width = driver.manage().window().getSize().width; int height = driver.manage().window().getSize().height; for (int i = 0; i < num; i++) { driver.swipe(width * 3 / 4, height / 2, width / 4, height / 2, during); goSleep(3); } }
swipeToLeft向左滑動
public static void swipeToRight(AppiumDriver<WebElement> driver,int during, int num) { int width = driver.manage().window().getSize().width; int height = driver.manage().window().getSize().height; for (int i = 0; i < num; i++) { driver.swipe(width / 4, height / 2, width * 3 / 4, height / 2, during); goSleep(3); } }
Appium滑動函數:Swipe