xCode 8Swift 3中的iOS异步单元测试(waitForExpectations失败)

xCode 8Swift 3中的iOS异步单元测试(waitForExpectations失败),第1张

概述我正在更新我开发的使用 Swift 3的Cocoapod.在升级之前,我的所有异步单元测试都运行得非常好.但现在升级后,每一个都会立即失败,我不知道为什么.以下是每个结构的结构: override func setUp() { super.setUp() validationExpectation = expectation(description: "Valida 我正在更新我开发的使用 Swift 3的Cocoapod.在升级之前,我的所有异步单元测试都运行得非常好.但现在升级后,每一个都会立即失败,我不知道为什么.以下是每个结构的结构:

overrIDe func setUp() {        super.setUp()        valIDationExpectation = expectation(description: "ValIDation")}...func testSymbolRequest(){        _ = MyCocoapod.makeSymbolRequest(symbol: "ABC",success: { (symbolObject) in            self.valIDationExpectation.fulfill()            XCTAssert(true)        }) { (error) in            self.valIDationExpectation.fulfill()            XCTFail(error.description)        }        waitForRequestToFinish()}...func waitForRequestToFinish(){    waitForExpectations(timeout: 60.0) { (error) in        if let error = error {            XCTFail(error.localizedDescription)        }    }}

waitForExpectations函数根本没有等待.被叫后立即失败.我还确认这与我的实际网络代码无关,并且请求在我的Cocoapod示例项目中完美运行.我正在使用Alamofire.我不认为这是问题,但我认为值得一提.打印出的错误消息是“未知错误”.

解决方法 如果您正在尝试测试正在开发的CocoaPod,由于某种原因,它创建的默认测试目标会使waitForExpectations()函数无法正常运行该特定测试目标.通过按顺序执行这些步骤,我能够最终完成工作:

>删除当前的测试目标
>创建一个新的测试目标
>运行pod安装并确保pod文件相应更新

按照这些步骤,我能够让waitForExpectations()最终在我的网络请求中工作.

总结

以上是内存溢出为你收集整理的xCode 8 / Swift 3中的iOS异步单元测试(waitForExpectations失败)全部内容,希望文章能够帮你解决xCode 8 / Swift 3中的iOS异步单元测试(waitForExpectations失败)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1003958.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存