2016-07-04 10 views
0

Ich benutze UI Test mit Xcode 7, habe aber ein paar Probleme. Wenn ich UI-Test aufzeichne, übersetzt Xcode Chinesisch in Unicode mit Großbuchstaben "U" und es zeigt Fehler an. Und ui TestcodeWie kann ich die Zeit steuern, nachdem ein UIButton angeklickt wurde, um die nächste Aktion in UI Testing mit Xcode vorzubereiten

XCUIApplication *app = [[XCUIApplication alloc] init]; 
[app.navigationBars[@"\u5934\u6761"].images[@"new_not_login30"] tap]; 
XCUIElementQuery *tablesQuery = app.tables; 
[tablesQuery.cells.staticTexts[@"\u6211\u7684\u864e\u94b1"] tap]; 

das Problem ist: nach der Bild Klopfen, gibt es eine Animation Sidebar mit UITableView zeigt oder UIAlertController zeigt aber ich kann die Dauer der Zeit nicht umgehen. Tatsächlich findet der Test innerhalb der Animation weiterhin die nächsten übereinstimmenden Elemente, aber diese Elemente existieren nicht oder generieren nicht. So ist der Test immer fehlgeschlagen. Jede Lösung, um diese Frage zu beantworten? Bitte hilf mir. Vielen Dank.

+0

Sie möchten eine Verzögerung, bevor die Schaltfläche Aktion auftreten? –

+0

@BashirSidani tippen Sie auf die Schaltfläche -> erstellen Sie eine Verzögerung und vervollständigen Sie die Animation -> finden Sie die Schaltfläche und tippen Sie auf – Chipmuck

Antwort

1

versuchen Sie es mit expectationForPredicate. Ich kenne die Syntax in objective-c nicht. Aber hier ist ein Teil des Codes in swift:

let app = XCUIApplication() 
app.navigationBars["\u5934\u6761"].images["new_not_login30"].tap() 
let label = app.cells.staticTexts["\u6211\u7684\u864e\u94b1"] 
let exists = NSPredicate(format: "exists == 1") 
expectationForPredicate(exists, evaluatedWithObject: label) { 
    // If the label exists, also check that it is enabled 
    if label.enabled { 
     label.tap() 
     return true 
    } else { 
     return false 
    } 
} 
waitForExpectationsWithTimeout(5) { error in 
    if (error != nil) { assertion ....} 

} 

Übersetzen Sie einfach diesen Code in objective-c.

Prost

+0

danke! Für mich geht das! :) – Chipmuck