如何在Appium WebDriver中向下滚动元素外观?我们正在使用模拟器进行自动化。
任何建议/帮助都将不胜感激。
答案 0 :(得分:2)
这有效
TouchAction action = new TouchAction(androidDriver);
action.press(0, 500)
.waitAction(200)
.moveTo(0, 200)
.release()
.perform();
只需使用坐标即可获得所需的滑动。
答案 1 :(得分:1)
为此,您可以使用 AppiumDriver 的scrollToExact()
或scrollTo()
个功能
AppiumDriver driver = new AppiumDriver();
在字符串包含" abc"
时滚动driver.scrollTo("abc");
或精确字符串" abc"看来你可以使用
driver.scrollToExact("abc");
答案 2 :(得分:0)
您可以使用
driver.scrollTo(value);
或
driver.swipe(start.x, start.y, end.x, end.y, duration)
供参考:http://appium.io/slate/en/0.18.x/?ruby#automating-mobile-gestures
答案 3 :(得分:0)
由于现在使用最新版本的appium(1.6.3)不推荐使用scrollTo()和更多相关方法。您可以尝试以下代码行。它对我有用,希望它也适合你......你可以根据你的要求改变尺寸。
Dimension dimensions = driver.manage().window().getSize();
//System.out.println("Dimension value = "+dimensions);
Double screenHeightStart = dimensions.getHeight() * 0.5;
//System.out.println("Screen Height start Value="+screenHeightStart);
int scrollStart = screenHeightStart.intValue();
//System.out.println("Scroll Start Value="+scrollStart);
Double screenHeightEnd = dimensions.getHeight() * 0.2;
// System.out.println("Screen Height start End="+screenHeightEnd);
int scrollEnd = screenHeightEnd.intValue();
//System.out.println("Scroll end Value="+scrollEnd);
driver.swipe(0,scrollStart,0,scrollEnd,2000);
sleep(3000);
答案 4 :(得分:0)
尝试使用以下代码滚动到底部: -
Dimension size= driver.manage().window().getSize();
int starty=(int)(size.height*0.80);
int endy=(int)(size.height*0.20);
int startx=size.width/2;
driver.swipe(startx, starty, startx, endy, 3000);
答案 5 :(得分:0)
这应该可以正常工作:
driver.findElementByAndroidUIAutomator("new UiScrollable(new UiSelector()).scrollIntoView(text(\"Put the text you want to scroll to here\"));");
如果你想在滚动到元素后点击它,添加一个 click() 方法:
driver.findElementByAndroidUIAutomator("new UiScrollable(new UiSelector()).scrollIntoView(text(\"Put the text you want to scroll to here\"));").click();