Ich versuche, eine Do-Try-Catch in Swift für meine iOS UI Test schreiben, die XCUI-Tests verwendet. Ich lese die Fehlerbehandlung Abschnitt: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/ErrorHandling.html#//apple_ref/doc/uid/TP40014097-CH42-ID508 aber ich bin mir nicht sicher, welcher Fehler ausgelöst werden soll, wenn ein Element nicht gefunden wird.Wie man richtig Fehler handle XCUI-Element nicht in Swift gefunden
func tapElement(string:String) throws {
do{
waitFor(app.staticTexts[string], 5)
try app.staticTexts[string].tap()
}
catch {
NSLog("Element was not found: \(string)")
//how can i check specifically that the element was not found?
}
}
....
func waitFor(element:XCUIElement, seconds waitSeconds:Double) {
NSLog("Waiting for element: \(element)")
let exists = NSPredicate(format: "exists == 1")
expectationForPredicate(exists, evaluatedWithObject: element, handler: nil)
waitForExpectationsWithTimeout(waitSeconds, handler: nil)
}
jede Hilfe sehr dankbar !!
Es gibt Zeiten, die würde ich würde gerne würde behandeln, wenn Elemente nicht gefunden werden – 1ak31sha
Ich hatte schon gelesen, durch Ihren Blog, es war eine großartige Quelle. aber ich suche keinen Ratschlag auf Knopfdruck. Jeder Einblick in die Verwendung der Versuch fangen, Fehler elegant zu behandeln würde sehr geschätzt – 1ak31sha
* Warum * versuchen Sie zu fangen? Siehe meine Bearbeitung, um zu überprüfen, ob das Element existiert. –