如何在没有测试目标的情况下让 SwiftUI Preview 只构建主要目标?

Posted

技术标签:

【中文标题】如何在没有测试目标的情况下让 SwiftUI Preview 只构建主要目标?【英文标题】:How to make SwiftUI Preview build the main target only without test targets? 【发布时间】:2021-11-11 19:27:32 【问题描述】:

我只想运行我的代码的 SwiftUI 预览,但是它也在构建我的单元测试。他们有一些错误,所以我不希望他们被建造。它们通常不会在运行我的 Xcode 项目时构建,那么为什么 SwiftUI 会构建它们呢?有没有办法关掉它?

干净构建后,我刷新预览,状态栏显示如下:

这是方案配置:

【问题讨论】:

更不用说构建所有的测试依赖了。 【参考方案1】:

据“框架工程师”的this Apple Dev Foums post reply 称,这是一个已知问题,除了删除您的测试目标 (!) 之外没有其他解决方法。

这是一篇相对较新的帖子(截至目前约 1 个月大),因此希望它会很快得到修复。

【讨论】:

【参考方案2】:

我遇到了同样的问题,经过无数次的尝试,我找到了一个对我有用的简单解决方案:

在编辑架构中从架构构建中删除了测试项目 -> 构建 在编辑模式中禁用覆盖收集 -> 测试

我建议创建一个仅用于 SwiftUI 预览的新架构,以防您想保留您的测试项目,这样您就可以根据您想要做的事情(SwiftUI 或测试)切换架构

【讨论】:

以上是关于如何在没有测试目标的情况下让 SwiftUI Preview 只构建主要目标?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 WHILE 循环锁定程序的情况下让 UDP 服务器在 Python 3 中监听?

想要在没有按钮的情况下让共享的 pref 工作

如何在不冻结整个线程的情况下让函数等待

如何在不冻结 GUI 的情况下让 AudioQueue 播放?

有没有办法在不使用 PHP 或 JavaScript 的情况下让 textarea 拉伸以适应其内容?

如何在给定日期和时间的情况下让一天倒退 24 小时?