【问题标题】:How to scroll vertically in hybdrid app using appium java如何使用 appium java 在混合应用程序中垂直滚动
【发布时间】:2025-11-25 21:00:02
【问题描述】:

我正在自动化混合应用程序。我想单击页面上不可见的注销,因此我需要向下滚动才能单击它。我正在尝试使用以下代码,但它不起作用,我正在使用 Java 客户端 5.0.4 Appium 服务器 1.7.2 和 selenium 3.9.1 和 Java jdk 版本 1.8.0_161。有没有人可以帮忙

JavascriptExecutor js = (JavascriptExecutor)driver;
        HashMap<String, String> scrollObject = new HashMap<String, String>();
        scrollObject.put("direction", "down");
        js.executeScript("mobile: scroll", scrollObject); 
        do 
        {
        try{
        ele1.click();
        break;
        }
        catch(Exception e){
            js.executeScript("mobile: scroll", scrollObject); 
        }
        } while(true);

【问题讨论】:

    标签: android webview appium


    【解决方案1】:

    查看此链接。我没有将它用于混合应用程序,但它可能会对你有所帮助。它提供了使用 Android Driver 垂直滚动页面的解决方案。
    http://www.qaautomated.com/2016/02/how-to-scroll-in-appium.html

    我已经尝试过这段代码,它可以让我点击屏幕上不可见的对象。你可以试试这个。

    MobileElement abc = (MobileElement) driver.findElement(MobileBy.AndroidUIAutomator("new UiScrollable(new UiSelector()).scrollIntoView("
                      +"new UiSelector().text(\"Country\"));"));
              abc.click();
    

    将“国家/地区”替换为您的文本或资源 ID。检查此链接以了解如何使用 UiSelector 帮助我找到此解决方案。 http://www.automationtestinghub.com/uiselector-android/

    【讨论】:

    • 欢迎提供解决方案的链接,但请确保您的答案在没有它的情况下有用:add context around the link 这样您的其他用户就会知道它是什么以及为什么会出现,然后引用最相关的内容您链接到的页面的一部分,以防目标页面不可用。 Answers that are little more than a link may be deleted.
    • 删除之前的答案后重新发布。
    • 这是您发布的包含相同域链接的second answer。您是否隶属于该站点?
    • 错误地发布了相同的答案。现在我已经编辑了这个并给出了解决方案。
    最近更新 更多