xcode-在没有主机应用程序的情况下运行测试时Swift包生成失败
发布时间:2022-05-28 19:53:57 243
相关标签: # swift# 软件# 软件
我的Swift macOS项目通过Swift软件包管理器使用Swift Collections软件包(Xcode 13.1,Swift Collections 1.0.2)。
当我的单元测试目标的主机应用程序设置为“无”时,测试生成会失败,并出现多个Undefined symbol
表单错误:
Undefined symbol: OrderedCollections.OrderedSet.append(A) -> (inserted: Swift.Bool, index: Swift.Int)
当没有主机应用程序时,似乎没有将 swift-collections 包文件添加到测试目标中,而且我看不到任何添加它们的方法。如果有人能告诉我这是否可以通过编辑Package.swift文件或类似文件来解决,那就太好了。
顺便说一句,在没有宿主应用程序的情况下运行单元测试的动机是启动应用程序时执行的代码被计入代码覆盖率报告中,这显着地向上倾斜了覆盖率。如果有一种方法我没有注意到可以防止或过滤它(无需更改源代码),那也可以解决我的问题。
编辑:这也发生在一个新的测试项目中:创建新的 macOS 项目;通过 File -> Add Package 添加 Swift-Collections 的 OrderedCollections 包;添加简单的结构导入和使用 OrderedCollections,例如:
import Foundation import OrderedCollections struct Wut { static func thing() { let whatever = OrderedSet() } }
在单元测试目标的“常规”选项卡中将主机应用程序设置为“无”,点击cmd-U,构建失败:Undefined symbol: OrderedCollections.OrderedSet.init() -> OrderedCollections.OrderedSet
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报