异步等待失败swift API请求

时间:2016-01-09 07:28:21

标签: ios swift asynchronous xctest

我已经创建了一个单元测试用例来测试我处理API请求的函数。

Bellow我已经提到了XC测试用例代码

var expectation:XCTestExpectation?

func testRequestFunction () {

    expectation = self.expectationWithDescription("asynchronous request")

    let test = HVRequest.init(subdomain: "staging", token: "jijfio88fhu0387fh", type: .GET, command: "estm") {
        (success) -> Void in

        }
    test.request()

    self.waitForExpectationsWithTimeout(30, handler: nil)

}

当我运行此测试用例时,它会出错

  

异步等待失败:超出30秒超时,未满足期望:“异步请求”。

如何显示带有错误的响应JSON对象。

请帮我解决问题

1 个答案:

答案 0 :(得分:4)

XCTestExpectation正在等待。当你收到回复时,你必须fulfill(意思是:用expectation说我得到回应,继续)。

    let test = HVRequest.init(subdomain: "staging", token: "jijfio88fhu0387fh", type: .GET, command: "estm") {
        (success) -> Void in
            expectation.fulfill() // add this line
        }
    test.request()