我的应用程序由许多项目(框架)组成,每个主要功能一个,而一个通用框架包含我需要在多个功能中访问的各种内容。
我正在使用Xcode 11的Swift Package Manager添加依赖项。
通用框架包含一个RxSwift依赖项,我在整个项目中都会使用它。
当我尝试在任何功能框架中使用RxTest时遇到问题。
如果我通过SPM将RxTest直接添加到测试目标并运行测试,我会得到
无法将“类名”的超类与损坏的名称“其他类名”进行分解
还有很多
类“类名”在“通用框架路径”和“测试目标路径”中均实现
所有这些类都与Rx有关。“无法解贴”错误使测试崩溃,并且仅在我尝试初始化RxTest类时发生。
如果我将RxTest添加到通用框架,则测试可以正常运行,但是当我运行应用程序时,
dyld:库未加载:@ rpath / XCTest.framework / XCTest
这是有道理的,因为我要在非测试框架中添加测试框架,这并不是一件好事。
因此,基本上,我无法获得测试和应用都能正常运行的配置。应用程序运行或测试运行。
我该如何工作?仅当我在测试目标上构建RxTest时,才可以将其包含在通用框架中吗?还是应该仅将RxTest包含在测试目标上,而我缺少一些配置?