6

XCTest UI テスト フレームワークを使用して、テーブル ビューの行をチェックしています。私のテストでは、インデックスを指定してテーブル ビューの行にテキストが存在することを確認する必要があります。

メソッドを使おうと思っていたのtableRows.elementBoundByIndexですが、何も返ってきませんでした。呼び出しによって返される行数tableRows.countはゼロです。行内のテキストを正常にクエリできるため、テーブルが存在し、入力されています。

XCTAssertEqual(app.tables.staticTexts["Cute Alpaca"].exists)

XCTest UI テストでインデックスが指定された行にテキストが存在することを確認するにはどうすればよいですか?

4

2 に答える 2

18

tableRowsは実際には行を検出しないことがわかりましたUITableViewcells代わりに使用してください。

Mac OS X では実際のテーブルがtableRowsあり、tableColumnsiOS では. または、まだベータ版であるため、これはバグである可能性があります。UITableViewCellUICollectionViewCell

let table = app.tables.element
XCTAssertTrue(table.exists)

let cell = table.cells.elementBoundByIndex(2)
XCTAssertTrue(cell.exists)
let indexedText = cell.staticTexts.element
XCTAssertTrue(indexedText.exists)

またはワンライナー

XCTAssertTrue(app.tables.element.cells.elementBoundByIndex(2).exists)
于 2015-09-04T02:08:17.543 に答える