【发布时间】:2014-11-30 09:43:30
【问题描述】:
这适用于同时使用 ObjC 和 Swift 的项目,我所涉及的代码是用 Swift 编写和测试的。
我有一个通信器类,它接收一个文档对象,并且应该从该对象检索一个 documentId。我的通信器有一个 serverPathForDocument: 方法,它使用这个 documentId 来构建一个远程路径来获取相关数据。
为通信器编写单元测试我意识到我想知道我的 serverPathForDocument: 方法是否可以处理 documentId 上的未启动 (nil) 值。如果用 Obj-C 编写,我的测试将如下所示:
- (void)testThatRemotePathForDocumentCanHandleNilDocumentId {
testDocument.documentId = nil
XCTAssertNoThrow([sut serverPathForDocument: testDocument], "Method should handle nil argument");
}
Swift 没有异常,或者我已经阅读过,那么我将如何编写一个适当的单元测试来检查一个方法是否可以处理一个可选设置为 nil?
【问题讨论】:
标签: objective-c unit-testing swift tdd xctest