首页 > 解决方案 > 如何使用 TouchActions appium 方法滚动页面?

问题描述

我为 Android 本机应用程序编写了自动化测试,并且遇到了滚动问题。

我需要滚动 Android 应用程序页面,并为此搜索下一个方法: http: //appium.io/docs/en/commands/interactions/touch/scroll/

TouchActions action = new TouchActions(driver);
action.scroll(element, 10, 100);
action.perform();

但在第一行我得到一个异常“java.lang.ClassCastException: io.appium.java_client.android.AndroidDriver cannot be cast to org.openqa.selenium.interactions.HasTouchScreen”

我的环境是:java、jdk 1.8.0_65、appium 1.6.1

PS我尝试使用TouchAction - 从这些自动化移动手势中,它可以工作,但方法已被弃用。

.press(100,100) 
.moveTo(100,100)

PPS 我也尝试执行 adb 命令,像这样:

  "adb -s shell input touchscreen swipe " + startx + " " + starty + " " + endx + " " + endy + " " + duration"

但这对我也不起作用,当然,如果可能的话,我想使用本机 appium 方法。

标签: javascrollappiumappium-android

解决方案


这是完美工作的命令。

     TouchAction action = new TouchAction(driver); 
             action.press(PointOption.point(115, 915)).waitAction(WaitOptions.waitOptions(Duration.ofSeconds(3)))
                             .moveTo(PointOption.point(115, 150)).release().perform();

推荐阅读