我已升级到xcode 7.3,现在我的UI测试正在破坏。由于某种原因,在拆卸过程中,应用程序无法再向右滑动,但它可以在拆除之前完成此操作。
XCUIApplication().swipeRight()
我恢复到xcode 7.2.1,它在那里工作。是否有其他人在xcode 7.3中遇到过类似的问题?知道怎么解决吗?或者如何确定应用参考是否陈旧?
答案 0 :(得分:2)
我发现Xcode 7.3在我的UI测试中没有任何交互工作。 但正如所建议的,延迟解决了我的问题。
我将此功能添加到我的UITest文件中:
private func wait(seconds: NSTimeInterval) {
let dateAfterWait = NSDate(timeIntervalSinceNow: seconds)
NSRunLoop.mainRunLoop().runUntilDate(dateAfterWait)
}
在点击或滑动之前调用它。 延迟0.5秒对我有用,但我想这取决于界面的复杂程度。
我还有一个方便功能,等待元素出现:
private func waitForElementDisplay(element: XCUIElement) {
let exists = NSPredicate(format: "exists == 1")
expectationForPredicate(exists, evaluatedWithObject: element, handler: nil)
waitForExpectationsWithTimeout(5, handler: nil)
}
但这不足以允许点击 - 即使在此函数返回后我也需要调用wait(0.5)
。