如何将资源(如框架)添加到Xcode测试目标?

时间:2017-08-22 19:32:06

标签: ios xcode unit-testing realm xctest

我目前正在尝试为iOS Cocoa Touch Framework构建单元测试,这取决于Realm.framework和RealmSwift.framework将值写入本地数据库。这些.frameworks将添加到目标中的Linked Frameworks和Libraries部分,以及构建阶段下的Link Binary With Libraries部分。当我编译项目并运行测试时,会发生以下错误:

2017-08-22 11:44:04.835 xctest[58812:72591791] The bundle “AppKitTests” couldn’t be loaded because it is damaged or missing necessary resources. Try reinstalling the bundle.
2017-08-22 11:44:04.835 xctest[58812:72591791] (dlopen_preflight(/Users/dev/Library/Developer/Xcode/DerivedData/AppKit-hisgovyxeuiaawcmvdjpliaqtwbp/Build/Products/Debug-iphonesimulator/AppKitTests.xctest/AppKitTests): Library not loaded: @rpath/Realm.framework/Realm
  Referenced from: /Users/dev/Library/Developer/Xcode/DerivedData/AppKit-hisgovyxeuiaawcmvdjpliaqtwbp/Build/Products/Debug-iphonesimulator/AppKitTests.xctest/AppKitTests
Reason: image not found)
Program ended with exit code: 82

我的项目目前没有使用动态库,CocoaPods或任何其他依赖管理器,因为这是一个概念证明。我认为这是因为测试目标无法访问Realm或RealmSwift,但我不确定如何添加它以便我的测试包不会丢失资源。我已经尝试过建议清除派生数据,重新启动Xcode并在测试前清理我的构建,并且我目前正在使用Xcode 8.3.3。

0 个答案:

没有答案