XCUIElement唯一标识符

时间:2018-10-01 11:15:05

标签: xcode-ui-testing xcuitest

在XCUITests中,是否存在一种独特的方法来标识在查询中持久存在的给定XCUIElement?

我不能使用标签,因为有时元素可以带有相同的标签。

哈希/哈希值可在给定查询中使用,但在连续查询后会刷新。

和往常一样,我找不到有关此主题的文档:(

2 个答案:

答案 0 :(得分:0)

您可以通过在表示的XCUIElement对象上设置accessibilityIdentifier来唯一标识UIView

// app code
let button = UIButton()
button.accessibilityIdentifier = "myButton"

// test code
let app = XCUIApplication()
let button = app.buttons["myButton"]
button.tap()

可访问性标识符仅用于UI测试。它们未本地化,您有责任将可访问性标识符设置为所需的唯一标识符。可访问性标识符将在视图的整个生命周期中保持不变,除非您的代码明确更改了它。

答案 1 :(得分:0)

我这样做的方法是将indexPath.row添加到String的末尾,并将其设置为AccessibilityIdentifier。

implementation "com.facebook.react:react-native:${versions.reactNative}"
 implementation ("com.google.code.findbugs:annotations:3.0.1") {
        exclude group: 'net.jcip', module: 'jcip-annotations'
    }

我什至将行值添加到内部单元格元素中。