找不到符号方法swipe(int,int,int,int,int)

时间:2017-11-07 09:51:46

标签: java android appium

我正在使用appium执行测试,我正在尝试使用swipe()函数。但它继续显示此错误。它无法读取显示Swipe(),的函数cannot resolve swipe

public class HorizontalTabscroll
{
    AppiumDriver driver;
    Dimension size; 
    @Before
    public void testCaseSetup()throws  Exception
    {

        DesiredCapabilities cap=new DesiredCapabilities();
        cap.setCapability(MobileCapabilityType.PLATFORM_NAME, "Android");
        cap.setCapability(MobileCapabilityType.DEVICE_NAME, "Android device");
        cap.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, "4000");
        cap.setCapability(MobileCapabilityType.APP, "c://apks//seekbarsample.apk");
        cap.setCapability("noReset", true);
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), cap);

    }

    @Test
    public void testHorizontalScroll()throws Exception
    {
        for(int i=0;i<4;i++)
        {
            Thread.sleep(2000);
            if (driver.findElement(By.name("tab8")).isDisplayed())
            {
                driver.findElement(By.name("tab8")).click();
                break;
            }
            else
            {
                horizontalScroll();
            }

        }
    }
    public void horizontalScroll()
    {
        size=driver.manage().window().getSize();
        int x_start=(int)(size.width*0.60);
        int x_end=(int)(size.width*0.30);
        int y=130;
        driver.swipe(x_start,y,x_end,y,4000);
    }
    @After
    public void testCaseTearDown()
    {
        driver.quit();
    }
}

这是我得到的错误: - 错误:找不到符号方法swipe(int,int,int,int,int) 错误:任务&#39;:app:compileDebugUnitTestJavaWithJavac&#39;。

执行失败
  

编译失败;有关详细信息,请参阅编译器错误输出。

1 个答案:

答案 0 :(得分:1)

您不应使用swipe方法,因为它已标记为deprecated,并且很快就会被删除。 相反,您应该使用 TouchActions

Dimension screenSize = driver.manage().window().getSize();
new TouchAction(driver)
  .press((int) (screenSize.width * 0.6), 130)
  .waitAction(500)
  .press((int) (screenSize.width * 0.3), 130)
  .release()
  .perform();