2016-04-08 69 views
3

我正在使用Xcode 7,Swift UI Automation。我需要等待UIButton出現在我的主屏幕中。我設置了「存在== 1」的期望。我可以在不失敗的情況下創建XCTest期望嗎?

這個UIButton有時會出現,有時它不會。 在我的UI測試過程中,如果元素出現,一切正常。 但是,如果元素不出現,期望失敗(我不希望它失敗,我只需要採取另一個行動流程)

我該如何做出決定,我的測試實際上失敗了?

+0

如果你知道當按鈕應顯示出來,你可以只添加在很短的睡眠通話'睡眠(3)',然後檢查按鍵是否有 – Alex

+0

那是什麼我正在做,正是我想要避免的。我不想使用sleep()調用。謝謝 – Herno

回答

1

你必須等待期望並處理它,如果沒有發生,請在括號內做別的事情。

let exists = NSPredicate(format: "exists == 1") 
expectationForPredicate(exists, evaluatedWithObject: UIButton, handler: nil) 
waitForExpectationsWithTimeout(10) { error in 

    somethings else 
} 

乾杯

相關問題