我正在使用selenium 2.53,Java 1.8,Appium 1.5.3来实现原生移动应用程序的自动化。现在我有一个条件,页面的长度太大,我必须点击页面的底部。如果我在测试运行之前手动滚动页面,然后点击自动化 - 点击工作正常。但是我无法使用代码向下滚动页面。我尝试了很多不同的代码集。现在我正在尝试下面的代码。但这也不起作用。
现在的问题是:我们如何将本机应用程序的页面滚动到特定元素并单击该元素?
JavascriptExecutor js = driver;
element = driver.findElement(getMethodToCall(object, byCall));
HashMap<String, String> scrollObject = new HashMap<String, String>();
scrollObject.put("direction", "down");
scrollObject.put("element", ((RemoteWebElement) element).getId());
js.executeScript("mobile: scroll", scrollObject);
答案 0 :(得分:0)
我在向下滚动时遇到了类似的情况,并使用了滑动和触摸动作,这两种方法在我的情况下运行良好。
<强>滑动强>
driver.swipe(startX, startY, endX, endY, duration);
<强> TouchActions:强>
TouchAction touchAction = new TouchAction(driver);
touchAction.press(startX, startY).moveTo(endX, endY).release().perform();
对于这两个,我已经在循环中使用它,直到我看到我想要点击的对象显示在屏幕上。