【发布时间】:2019-02-20 03:28:25
【问题描述】:
您将如何创建一个测试函数来比较同一类的两个对象的内容?
背景: 我有一个从 CSV 文件中提取数据并使用该数据创建对象的函数。我想知道这个函数是否生成了正确的输出。
【问题讨论】:
标签: ios swift xcode unit-testing testing
您将如何创建一个测试函数来比较同一类的两个对象的内容?
背景: 我有一个从 CSV 文件中提取数据并使用该数据创建对象的函数。我想知道这个函数是否生成了正确的输出。
【问题讨论】:
标签: ios swift xcode unit-testing testing
查看 Equatable 协议。例如
extension MyClass: Equatable
{
static func ==(lhs: MyClass, rhs: MyClass) -> Bool
{
return (lhs.property1 == rhs.property1) && (lhs.allData == rhs.allData)
}
}
【讨论】:
您是否只是想检查类类型,如下所示?类似于[custom isKindOfClass: MyClass]
guard customClass is MyClass else {
XCTFail("FAILURE ")
return
}
编辑:
比较两个自定义对象 check this 的内容。实现自定义 equatable 方法后,使用以下语句检查单元测试。
XCTAssert(object1 == object2)
【讨论】:
compare the contents of two objects of the same class。
=== 运算符检查对象的引用而不是内容。
static func ==(lhs:rhs)-> Bool)比较内容,然后在单元测试中使用== 进行比较。