【发布时间】:2019-05-21 06:36:19
【问题描述】:
在运行某些单元测试时出现不一致的错误:
2018-12-20 09:11:34.892 MyApp[4530:106103] * void _XCTFailureHandler(XCTestCase *__strong _Nonnull, BOOL, const char * _Nonnull, NSUInteger, NSString *__strong _Nonnull, NSString * 中的断言失败__strong _Nullable, ...)(), /Library/Caches/com.apple.xbs/Sources/XCTest_Sim/XCTest-14460.20/Sources/XCTestFramework/Core/XCTestAssertionsImpl.m:41 2018-12-20 09:11:34.929 MyApp[4530:106103] * 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“参数“test”不得为 nil。”
似乎某些断言失败了,因为参数是nil,但我很难确定是哪一个。
环境: Xcode 10.1 iOS 应用程序
【问题讨论】:
-
你使用什么语言编写测试?
-
@JonReid 单元测试和应用程序都是用 Swift 编写的
-
您能否将测试代码缩减为您可以共享但仍然有错误的代码?
-
发现问题,刚刚发布了答案。感谢您的帮助。
-
从未尝试过异步单元测试。当它咬我时,我正在浏览 Paul Hudson 的
Testing Swift书(来自 hackingwithswift.com),以防其他人有同样的经历。有趣的是,他准确地概述了您答案中“恐怖”案例的解决方案。
标签: xcode unit-testing xctest