java - 如何使用 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 方法。
解决方案
这是完美工作的命令。
TouchAction action = new TouchAction(driver);
action.press(PointOption.point(115, 915)).waitAction(WaitOptions.waitOptions(Duration.ofSeconds(3)))
.moveTo(PointOption.point(115, 150)).release().perform();
推荐阅读
- excel - VBA:带有“选择案例”的着色图表系列
- python - python3 - 按元素扩展字符串列表
- python - 从 defaultdict 打印值
- authentication - Web-Shiro getSuccessUrl 的 PassThruAuthenticationFilter
- powershell - 参数 interups docker build
- powershell - 获取 Windows 的集群详细信息
- apache - 服务 httpd restart 不显示任何信息
- c# - 在 C# 中使用内部联接语句将 nvarchar 值转换为数据类型 int 时转换失败
- selenium - 如何在 selenium 网格节点中打开本地计算机中可用的 html 文件
- c# - 将表达式谓词的左侧转换为字符串