2016-04-08 15 views
0

Ich versuche, einen UI-Test für meine iOS-Anwendung zu schreiben. Aus irgendeinem Grund kann ich nicht auf meine benutzerdefinierte Tabellenansichtszelle tippen. Hier ist, wie ich versuche, das zu tun:XCUIEment tap funktioniert nicht für benutzerdefinierte Tabellenansicht Zelle

let app = XCUIApplication() 
let staticTextOfFirstCell = app.tables.cells.elementBoundByIndex(0) 
    .staticTexts.elementBoundByIndex(0) 
staticTextOfFirstCell.tap() 

Die staticTextOfFirstCell gesetzt und auch vorhanden ist. Meine Testfälle bleiben jedoch im Zustand Wait for app to idle.

+0

Haben Sie Animationen oder Aktivitätsindikatoren aktiv gezeigt? –

+0

Wenn die Seite angezeigt wird, lade ich zuerst Daten aus dem Backend. Während dieser Zeit wird ein Indikator angezeigt. Ich habe jedoch bereits versucht, eine Logik hinzuzufügen, um zu warten, bis die Daten angezeigt werden. – andreaspfr

Antwort

0

Wenn Sie mit UIRefreshControl versuchen, die Ladeanzeige Kommentar zeigt, wenn es mit dem UI-Tests gut und tragen auf Werke, die Umhüllung mit Build-Konfiguration zeigt, wenn Anweisung wie folgt zu sein:

#if !TEST 
    if let refreshControl = refreshControl where !refreshControl.refreshing { 
     refreshControl.beginRefreshing() 
    } 
    #endif 

so wird es diesen Code-Block nicht ausführen, sobald Sie Ihren UI-Test ausführen.

Beachten Sie, dass Sie Build-Konfiguration für Ihren UI-Test hinzufügen müssen. Es gibt einen Radarfehler gemeldet here für Animationen (ich glaube, das gleiche gilt für Refresh Control)