xcode - Swift - 使用 ObjectMapper 进行模型单元测试

标签 xcode swift unit-testing model xctest

我有一堆使用 ObjectMapper 库的模型(因为我正在解析 JSON 来构建对象)。
如何为我的模型编写单元测试?我对此还很陌生,对到目前为止所读的内容感到很困惑。

这是我的一个模型的示例:

import ObjectMapper

class User: Mappable {
    var id: Int?
    var firstName: String?
    var lastName: String?

    required init?(_ map: Map) {
        mapping(map)
    }

    func mapping(map: Map) {
        id        <- map["ID"]
        firstName <- map["first_name"]
        lastName  <- map["last_name"]
    }
}

最佳答案

也许试试这个:

import XCTest
import ObjectMapper
@testable import AppName

class User Tests: XCTestCase {

    func testMapsData() {
        let jsonDictionary: [String: Any] = ["id": 10, "firstName": "John", "lastName": "Doe"]
        let user = Mapper<User>().map(JSON: jsonDictionary)

        XCTAssertEqual(user?.id, 10)
        XCTAssertEqual(user?.firstName, "John")
        XCTAssertEqual(user?.lastName, "Doe")
    }

}

关于xcode - Swift - 使用 ObjectMapper 进行模型单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31666279/

相关文章:

ios - 无法使用 Testflight 进行内部测试的 'Start Testing'

当我恢复应用程序 : "applicationDidBecomeActive:]: unrecognized selector sent to instance" 时 iOS 崩溃

ruby-on-rails - 通过删除 tmp 文件(或任何此类文件?)来加速 rspec

scala - 假人的 Akka Actors 单元测试

google-maps-api-3 - 快速使用未解析的标识符 'GMServices'

java - 我可以在使用 JUnit 测试的公共(public)方法中完全省略私有(private)方法吗?

ios - 将具有依赖项的二进制框架从 CocoaPods 迁移到 SPM 或 XCFramework

ios - 尝试设置或获取实例变量时出现访问错误

ios - 为什么页面控件不反射(reflect)我在 UIScrollView 上的位置?

ios - swift中的行控制语句