【问题标题】:Appium iOS automation using Java: All Elements that have Accessibility ID使用 Java 的 Appium iOS 自动化:所有具有辅助功能 ID 的元素
【发布时间】:2018-03-07 12:18:04
【问题描述】:

我正在将 Selenium 3.x 与 Appium 一起使用,并在使用 XCUITest 作为自动化名称的 Native iOS App 上工作。

我可以使用辅助功能 ID 访问单个元素,它可以正常工作,例如driver.findElement(MobileBy.AccessibilityId("Location")).click();

有没有办法在单个页面/表单上获取所有 Accessiblilty ID(或值)的列表?

提前致谢。

【问题讨论】:

    标签: java selenium appium-ios


    【解决方案1】:

    你可以试试下面的方法,只是你必须根据 android 架构更改代码的第一行,因为我不知道所有元素都包含在应用程序中的什么位置。

    以下示例标识了所有 div 元素的名称(或在您的情况下为可访问性 id 属性),因此您只需调整第一行:

             List<WebElement> allElems = driver.findElements(By.xpath("//body//div"));
    
            System.out.println("Avaialable Accesible ids :");
    
            int c=0;
            for(WebElement ele : allElems) {
                c++;
                System.out.print("for element " + c +" Accessibility ID is :");         
    
                System.out.println(ele.getAttribute("name"));
                //or 
                System.out.println(ele.getAttribute("content-desc"));
    
            }
    

    【讨论】:

    • 我按照你解释的方式试过了,但是 iOS MobileBy 不像 webdriver 那样工作 .. 这个选项不起作用:(
    猜你喜欢
    • 2017-06-09
    • 2015-08-25
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-24
    • 2017-08-03
    • 2016-10-13
    相关资源
    最近更新 更多