XCTest每次都没有给我准确的结果(有时它会失败,有时会通过)

时间:2017-02-06 11:58:08

标签: ios swift xcode xctest uitest

我正在使用XCode 8.2.1(Swift)和XCode UI测试来测试我的应用程序的UI,所以我的这个工具的问题是它没有给我准确的结果一些测试通过和下一次他们失败了。

我的问题可能是通用的,但这个问题与我有关还是常见问题?我相信这是在迁移到XCode 7 +后发生的

你们建议使用其他工具进行UI测试吗?因为我正在寻找更快,更准确和与CI服务器集成的能力。

1 个答案:

答案 0 :(得分:1)

private func waitForElementToAppear(element: XCUIElement,
                                    file: String = #file, line: UInt = #line) {
    let existsPredicate = NSPredicate(format: "exists == true")
    expectation(for: existsPredicate,
                evaluatedWith: element, handler: nil)

    waitForExpectations(timeout: 30) { (error) -> Void in
        if (error != nil) {
            let message = "Failed to find \(element) after 30 seconds."
            self.recordFailure(withDescription: message,
                               inFile: file, atLine: line, expected: true)
        }
    }
}

调用此方法并避免测试失败,因为有时我们的UI需要更多时间从服务器获取结果。