我可以在不失败的情况下创建XCTest期望吗?
问题描述:
我正在使用Xcode 7,Swift UI Automation。我需要等待UIButton出现在我的主屏幕中。我设置了“存在== 1”的期望。我可以在不失败的情况下创建XCTest期望吗?
这个UIButton有时会出现,有时它不会。 在我的UI测试过程中,如果元素出现,一切正常。 但是,如果元素不出现,期望失败(我不希望它失败,我只需要采取另一个行动流程)
我该如何做出决定,我的测试实际上失败了?
答
你必须等待期望并处理它,如果没有发生,请在括号内做别的事情。
let exists = NSPredicate(format: "exists == 1")
expectationForPredicate(exists, evaluatedWithObject: UIButton, handler: nil)
waitForExpectationsWithTimeout(10) { error in
somethings else
}
干杯
如果你知道当按钮应显示出来,你可以只添加在很短的睡眠通话'睡眠(3)',然后检查按键是否有 – Alex
那是什么我正在做,正是我想要避免的。我不想使用sleep()调用。谢谢 – Herno