Xcode 7.3打破了UI测试 - 在拆除后无法正常工作

时间:2016-03-29 19:40:40

标签: ios xcode7 xcode-ui-testing

我已升级到xcode 7.3,现在我的UI测试正在破坏。由于某种原因,在拆卸过程中,应用程序无法再向右滑动,但它可以在拆除之前完成此操作。

XCUIApplication().swipeRight()

我恢复到xcode 7.2.1,它在那里工作。是否有其他人在xcode 7.3中遇到过类似的问题?知道怎么解决吗?或者如何确定应用参考是否陈旧?

1 个答案:

答案 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)