如何在java中使用iOS模拟器自动滑动iOS移动应用程序的手势?

时间:2015-08-19 07:23:36

标签: java ios appium mobile-application swipe-gesture

  1. 我需要在iOS移动应用中自动滑动手势(从右到左,从左到右)。

  2. 我使用的是appium版本1.4.8,iOS模拟器6和平台版本为8.3。

  3. 我正在使用java语言编写测试用例。

  4. 我尝试使用以下编码进行滑动手势。但是,滑动动作对我来说并不会发生。

  5.  public void swipeLeftToRight(AppiumDriver driver) {
         Dimension size = driver.manage().window().getSize();
         int endx = (int) (size.width * 0.8);
         int startx = (int) (size.width * 0.20);
         int starty = size.height / 2;
    
         driver.swipe(startx, starty, endx, starty, 1000);
     }
    
     public void swipeRightToLeft(AppiumDriver driver) {
         Dimension size = driver.manage().window().getSize();
         int startx = (int) (size.width * 0.8);
         int endx = (int) (size.width * 0.10);
         int starty = size.height / 2;
    
         driver.swipe(startx, starty, endx, starty, 1000);
     }
    

2 个答案:

答案 0 :(得分:0)

您也可以使用TouchAction类来执行此操作。试试这个:

TouchAction action = new TouchAction(driver).longPress(longPress).moveTo().release();
action.perform();

答案 1 :(得分:0)

对我来说,以下代码适用于“在iOS真实设备上从左向右滑动”的情况 我认为仅将“ direction”值更改为“ left”就足以解决情况“ swipe” 从右到左” 附言:如果您使用的是webwiev应用程序,则在应用以下代码之前,您应该切换到本机视图 希望对您有帮助

JavascriptExecutor js = (JavascriptExecutor) driver;
 HashMap<String, String> scrollObject = new HashMap<String, String>();
 scrollObject.put("direction", "right");
 WebElement element = ((IOSDriver) device.getDriver()).findElementById("id");
 scrollObject.put("element", ((RemoteWebElement) element).getId());
 js.executeScript("mobile: swipe", scrollObject);