在我通过 doint
Product -> Test
运行 ProjectNameTests.m (空测试文件)后,项目构建成功,但它抛出并给出以下错误:
2016-01-10 11:25:32.677 xctest[66104:5611958] The bundle “ProjectNameTests” couldn’t be loaded. Try reinstalling the bundle.
2016-01-10 11:25:32.677 xctest[66104:5611958] (dlopen(/Users/XYZ/Library/Developer/Xcode/DerivedData/ProjectName-dnwnjlzdzxbcyydkxsumlvokmhvk/Build/Products/Debug-iphonesimulator/ProjectNameTests.xctest/ProjectNameTests, 265): Symbol not found: _FBSDKErrorArgumentCollectionKey
Referenced from: /Users/XYZ/Library/Developer/Xcode/DerivedData/ProjectName-dnwnjlzdzxbcyydkxsumlvokmhvk/Build/Products/Debug-iphonesimulator/ProjectNameTests.xctest/ProjectNameTests
Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Agents/xctest
in /Users/XYZ/Library/Developer/Xcode/DerivedData/ProjectName-dnwnjlzdzxbcyydkxsumlvokmhvk/Build/Products/Debug-iphonesimulator/ProjectNameTests.xctest/ProjectNameTests)
Program ended with exit code: 83
我尝试过从测试中删除 UIKit、更改 Match-O 类型、将模拟器切换到 iPhone 5 以及类似答案中建议的其他内容,但没有任何运气。有什么想法吗?
几年后回答(Xcode 13.4),但希望这会对某人有所帮助!
我的问题与代码签名有关。
转到测试目标的 Build Settings 和:
如果尚不存在,您可能需要创建一个 Apple Distribution 证书。
以下是创建它的步骤:
+
图标并选择 Apple Distribution
。我刚刚遇到了类似的问题,结果发现 Xcode 项目的部署目标设置为 7.2,但 Expecta 和 septa 需要 8.0 或更高版本。
我遇到退出代码 83 的错误,无法识别添加到项目的外部库中的符号。
就我而言,通过在测试目标常规配置中将“主机应用程序”设置为应用程序来解决此问题。我还检查了“允许测试主机应用程序 API”
即使我也遇到同样的错误 我按照以下步骤解决了这个问题
将测试目标的Build settings中的Test Host设置为 $(BUNDLE_LOADER)
实际上,我试图将单元测试添加到已经存在的项目中,我应该遵循链接中给出的方法中的过程使用 Xcode 4 将单元测试添加到现有的 iOS 项目,我错过了该步骤
我想我迟到了,但对我有用的是。
为现有项目创建单元测试包时,检查以下几点。
如果您使用 Firebase Pods
重新启动 Xcode。你就可以走了。
有时,此错误也可能因愚蠢的原因而发生:目标中的零测试。
仔细检查您的配置。
我遇到了类似的问题,就我而言,这也是签名问题。确保托管应用程序设置为与测试目标相同的开发团队。调整两个目标的签名以匹配相同的开发团队为我解决了这个问题。
感谢您为我指明了正确的方向。从错误消息来看,我从来没有想过这是一个“很好的旧签名问题”:-)
删除并重新添加该方案对我有用。