在Appium中,如何使用Java方法在Android屏幕中提供“如何滚动和验证所需的元素集”?

时间:2019-01-07 11:01:25

标签: appium appium-android

在我的Android应用中,我需要向下滚动屏幕并验证所需的元素(每个元素)是否可用。如何使用Java方法实现这一目标?

3 个答案:

答案 0 :(得分:0)

这里的好方法是使用本机UIAutomator查找策略:

public void isElementPresent(String resourceId) {
    return androidDriver.findElementsByAndroidUIAutomator("new UiScrollable(new UiSelector()
       .scrollable(true).instance(0)).scrollIntoView(new UiSelector().resourceId("<your app package name>:id/" + resourceId + "\"))")
       .size() > 0; 
}

它将上下滚动视图以通过提供的resourceId查找元素,如果存在元素,则返回true

答案 1 :(得分:0)

使用以下代码使用JAVA上下滚动。

driver.findElementByAndroidUIAutomator("new UiScrollable(new UiSelector()).scrollIntoView(text(\"**Text you want to Find**\"));");

谢谢。

答案 2 :(得分:0)

使用以下代码使用java向上滚动:

public void swipeUp(AppiumDriver<?> appiumDriver, MobileElement fromPosition, MobileElement toPosition) {
        Dimension size = fromPosition.getSize();
        Dimension size1 = toPosition.getSize();
        TouchAction swipe = new TouchAction(appiumDriver)
                .press(ElementOption.element(fromPosition, size.width / 2, size.height - 20))
                .waitAction(WaitOptions.waitOptions(Duration.ofSeconds(4)))
                .moveTo(ElementOption.element(toPosition, size1.width / 2, size1.height / 2 + 30)).release();
        swipe.perform();
        logger.info("Swipe Success");
    }