2017-03-22 20 views
1

UITestでは、ログインボタンをタップした後、ログインが成功し、何をすべきかを決める2つのイベントを待つ必要があります。ドキュメントは言う 、そのXCTest waitForExpectations(...)複数の結果を待っています

つだけ-waitForExpectationsWithTimeout:ハンドラは:任意の時点でアクティブにすることができますが、{期待 - >待機}の *複数の個別のシーケンスが一緒に連鎖させることができます。

これは少しでもうまくいく必要がありますが、最終的にはわかりました。

答えて

0

述語に引数を追加し、条件間にORを使用できます。その後

let skipUpdateButtonPredicate = NSPredicate(format: "%@.exists == 1 OR %@.exists == 1", skipUpdateButton, homeTabBar) 
self.expectation(for: skipUpdateButtonPredicate, evaluatedWith: [Any](), handler: nil) 
testCase.waitForExpectations(timeout: Constants.loginTimeout, 
           handler: nil) 

自宅や更新が提示されている場合は、ここで分岐することができます

if skipUpdateButton.exists { 
    skipUpdateButton.tap() 
} 
関連する問題