【问题标题】:Unit tests throw error when simulator is in SDK 5.1模拟器在 SDK 5.1 中时单元测试抛出错误
【发布时间】:2013-02-13 18:55:32
【问题描述】:

当目标设置为 6.1 时,我的单元测试运行良好,而当我浏览模拟器中的功能时,代码本身也运行良好。

认为问题在于单元测试期望 6.1 SDK 存在,但它实际上使用的是 5.1 SDK。

这是错误:

dyld: Symbol not found: _objc_setProperty_nonatomic_copy
  Referenced from: /Users/{my username}/Library/Developer/Xcode/DerivedData/{my app name}/Build/Products/Debug-Live-iphonesimulator/AgrianUnitTest.octest/AgrianUnitTest
  Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk/System/Library/Frameworks/Foundation.framework/Foundation

我的第一个想法是在我的单元测试目标中更改 Base SDK,但除了最新和 6.1 之外我没有任何选项(手动输入 5.1 会导致“找不到 SDK”)。

【问题讨论】:

  • 您是否将部署目标设置为 5.1 ?如果没有,那就试试吧。
  • 已经设置好了。

标签: ios objective-c unit-testing ocunit


【解决方案1】:

在升级之前,您的 Xcode 位置可能不是最新的。尝试修复位置。在终端中运行:

sudo /usr/bin/xcode-select -switch /Applications/Xcode.app/Contents/Developer/
export DEVELOPER_DIR=/Applications/Xcode.app

【讨论】:

  • 尝试从 Organizer -> Projects 中删除派生数据
猜你喜欢
  • 2018-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多