UI 测试用例 XCUIElementTypeQueryProvider tableRows 和 tableColumns 计数为 0

UI Test Case XCUIElementTypeQueryProvider tableRows and tableColumns count is 0

我正在尝试测试 UITableView 是否至少有第一个单元格可用。

func testFirstCellIsAvailable() throws {
    let app = XCUIApplication()
    app.launch()
    let tablesQuery = app.tables
    XCTAssertNotNil(tablesQuery.cells.staticTexts["John"], "First Cell should be John")
            
}

这是判断 TableView 是否加载的最简单方法之一。

但是,我看到 XCUIElementQuerytableRowstableColumns,当我检查该值时它始终为零。所以问题是我们什么时候使用 tableRowstableColumns

对于上面的例子,app.tableRows.countapp.tableColumns.count的值是0。

tableColumnstableRows 通常在 2D table 中看到,而“平面”UITableView 由 cells 组成。例如,如果您在 macOS Notes 应用程序中创建 table 并检查 XCUIApplication

,则可以看到此类元素