使用 Xcode UI 测试检测重复的 table 行

Detecting duplicated table rows with Xcode UI testing

我正在尝试捕捉记录在应用程序启动后不久在 table 视图中列出两次的情况。我相信这是我的 UIViewController 子类之一的错误。字符串值可以通过 XCUIApplication().tables.staticTexts["Example string"] 找到,我选择了我希望出现在第一行的值,这意味着如果该行重复,它将与其原始行一起可见(而不是在屏幕外并且还没有在单元格实例中)。但我显然无法像这样迭代静态文本:

var nameCounter = 0
for aStaticText in XCUIApplication().tables.staticTexts.element {
    aName = aStaticText.label
    if ("Example string" == aName) {
        nameCounter += 1
    }
}

我的 for...in 语句生成错误:类型 'XCUIElement' 不符合协议 'SequenceType'。

还有其他方法可以执行此测试吗?如果我可以将 staticTexts 字符串插入数组或集合中,那就可以了。或者有另一种方法可以在 table 行中查找重复值吗?

可以枚举的元素有allElementsBoundByIndex:

for aStaticText in XCUIApplication().tables.staticTexts.allElementsBoundByIndex {
// ...
}