在我的应用程序中,我有两个选项卡按钮,分别是 Tasks 和 Worklist。任务总是被加载。但是 Worklist 按钮是动态的,并且仅在一段时间后才加载。
我想在一段时间后单击任务按钮。即,我需要等待 Worklist 按钮,如果它在一段时间后存在,则单击 Tasks 按钮。此外,如果超时超过并且未加载工作列表按钮,那么我需要单击任务按钮。
我不能使用睡眠。
我可以使用expectationForPredicate 和waitForExpectationsWithTimeout。但是如果在超时后找不到元素,waitForExpectationsWithTimeout 就会失败。即使我写
waitForExpectationsWithTimeout(120) { (error) -> Void in
click Tasks button
}
这会导致主线程停止。
我只想在加载工作清单后单击任务按钮。但如果在超时后未加载工作列表,那么我还需要单击任务按钮..
有什么解决办法。任何帮助。