我的情况是滚动到页面中间的某个位置,然后滚动到一个动态元素。现在,当我使用:-
使用touchAction时TouchAction tc2=touchAction.press(PointOption.point(startX, startY)).waitAction().moveTo(PointOption.point(endX, endY)).release().perform();
滚动量不一致,有时滚动超过,有时滚动不足。同样,我们也没有布尔值来返回触摸操作,以知道它实际上是否起作用。
Q1。我们如何验证TouchAction是否正常工作?
Q2。哪种方法是使用appium为移动设备实现滚动的最佳方法?
UiAutomator2
作为自动化引擎,请添加所需的功能appium
。>>capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, "UiAutomator2");
如果您具有元素的ID,现在使用下面的函数,并且页面上只有一个元素的索引为0。
public void scrollByID(String Id, int index) {
try {
driver.findElement(MobileBy.AndroidUIAutomator("new UiScrollable(new UiSelector().scrollable(true).instance(0)).scrollIntoView(new UiSelector().resourceId(\""+Id+"\").instance("+index+"));"));
} catch (Exception e) {
e.printStackTrace();
}
}