2016-08-22 8 views
0

私はいくつかのUIテストを書いていますが、現在、テーブルビューのセルにあるテキストと一致する問題があります。UIテストuitableviewcellからテキストを取得

だから、テーブルビューには必要なすべてのケースがあることをテストしたいと思います。

次のように私はそれを試してみました:

if !app.staticTexts["sometext"].exists { 
// FAIL 
} 

が、このdoens't仕事をそれがテキストを検索しないと、私はこのような何か見つけたので:

app.tables.cells.staticTexts["some text"].exists 

と最後のではなく、このように少なくとも:

app.tables.cells.containingType(.StaticText, identifier: "some text") 

しかし、それは決してテキストを見つけることはありません、それは画面上にあります。 誰かがテーブルビューのセルからテキストを取得する方法を知っていますか?

+0

問題が見つかりました。私は2つのテーブルビューを持っているとapp.tablesは、最初のtableviewは2番目のものではありません。だから私は何とか2番目のテーブルビューに切り替える必要があります。 – user1007522

答えて

1

両方のUITableViewでaccessibilityIdentifierを設定すると、毎回正しい表を選択できるようになります。

app.tables["myIdentifier"].cells.staticTexts["some text"] 
+0

あなたはKIFフレームワークで同じことをする方法を知っていますか? –

+0

申し訳ありませんが、私はKIF APIをよく知っていません。 – Oletha

1

セルの識別子が明確に定義されている場合、事柄が適切に設定されます。お試しください -

let app = XCUIApplication() 
    let tablesQuery = app.tables 
    XCTAssertTrue(tablesQuery.cells.containing(.staticText, identifier: "my identifier").staticTexts["Some Text"].exists, 
        "Failure: Something went wrong.") 
関連する問題