如果元素在Appium IOS Xcuit测试中没有唯一的“可访问性ID”,则如何编写xpath

时间:2018-08-24 08:12:41

标签: appium-ios

如何处理没有唯一可访问性ID的元素 请找到以下屏幕截图链接

1 个答案:

答案 0 :(得分:0)

首先,您应该避免将XPath 与iOS上的 Appium 一起使用:它不受XCUTest的本地支持,因此,它会严重影响性能元素搜索。

第二,最好设置可访问性标签,即使它是一组具有相同元素的元素:

这是一个Java示例,您可以如何搜索和选择具有相同ID的元素之一:

        List<WebElement> elsWithSameId = driver.findElements(MobileBy.AccessibilityId("your id"));
        WebElement specificElement = elsWithSameId.stream()
            .filter(element -> element.getText() == "My Favorite element")
            .findFirst()
            .get();
        specificElement.click();

如果您仍然想使用XPath,只需尝试为要与之交互的元素查找更多/更少的唯一类,然后构建iOS predicates(与XPath类似的机制,但它是XCUITest的本机)