Ios 我能在不失败的情况下做出一个测试预期吗?

Ios 我能在不失败的情况下做出一个测试预期吗?,ios,xcode,swift,xcode-ui-testing,Ios,Xcode,Swift,Xcode Ui Testing,我使用的是Xcode 7,Swift UI自动化。我需要等待UIButton出现在我的主屏幕上。我为“exists==1”设置了一个期望值 这个按钮有时出现,有时不出现。 在UI测试期间,如果元素出现,则一切正常。 但是如果元素没有出现,那么期望就会失败(我不希望它失败,我只需要采取另一种行动流程) 如果我们的测试真的失败了,我怎么能做出决定呢?你必须等待期望值,如果没有发生这种情况,就要处理它,在括号内做些别的事情 let exists = NSPredicate(format: "exist

我使用的是Xcode 7,Swift UI自动化。我需要等待UIButton出现在我的主屏幕上。我为“exists==1”设置了一个期望值

这个按钮有时出现,有时不出现。 在UI测试期间,如果元素出现,则一切正常。 但是如果元素没有出现,那么期望就会失败(我不希望它失败,我只需要采取另一种行动流程)


如果我们的测试真的失败了,我怎么能做出决定呢?

你必须等待期望值,如果没有发生这种情况,就要处理它,在括号内做些别的事情

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

   somethings else
}

干杯

如果您知道按钮何时会出现,您可以添加一个简短的睡眠呼叫
sleep(3)
,然后检查按钮是否在那里这就是我要做的,也是我想要避免的。我不想使用sleep()调用。谢谢