加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ios – 为什么我需要在Swift中为struct编写初始化器才能在单元测

发布时间:2020-12-15 01:56:33 所属栏目:百科 来源:网络整理
导读:我试图使用一个公共的结构体 public struct Person { public let name: String} 在单元测试(XCTest)中: let person = Person(name: "Paul") 测试版本失败,错误: ‘Person’ cannot be constructed because it has no accessible initializers. 为了构建测
我试图使用一个公共的结构体

public struct Person {
  public let name: String
}

在单元测试(XCTest)中:

let person = Person(name: "Paul")

测试版本失败,错误:

‘Person’ cannot be constructed because it has no accessible initializers.

为了构建测试,我需要为struct编写一个初始化器。感觉不舒服,因为结构体已经有初始值。有没有人有更好的解决方案?

Xcode版本6.1.1(6A2008a)

解决方法

这是在Swift 2.0中使用@testable属性修复的。

如果您使用@testable将模块导入到测试中,则您的测试将会显示合成的初始化程序。

您可以在@testable here.中找到简要介绍

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读