Xcode 3.1中的单元测试

时间:2020-03-05 18:46:56  来源:igfitidea点击:

我阅读了有关"最佳测试Objective-C单元的最佳方法"的问题,并按照说明进行操作,但是无论我做什么,都不会运行单元测试。实际上,整个程序无法运行,我收到以下消息。

dyld:未加载库:@ rpath / SenTestingKit.framework / Versions / A / SenTestingKit从/ Users / garethlewis / work / objc / UnitTesting / build / Debug / UnitTesting引用
原因:找不到图片

我设置了DYLD_FALLBACK_FRAMEWORK_PATH变量,还设置了XCInjectBundle以及DYLD_INSERT_LIBRARIES,并添加了变量-SenTest All。

我没有唯一的Xcode 3.1安装会导致单元测试失败。

设法在Xcode 3.1上获得单元测试的人能否提供一些有关需要完成的细节。这对我正在尝试做的事情有很大帮助。

解决方案

回答

我们无需执行此操作即可运行测试。

如果要为应用程序编写测试,则只需要为单元测试捆绑包目标设置"测试主机"和"捆绑包加载程序"构建设置,它们将作为构建的一部分运行。如果我们正在为框架编写测试,甚至不需要这样做,只需确保测试包链接到框架即可。

我假设我们实际上是在谈论调试测试,而不仅仅是运行它们。如果是这样,给我们以下信息很重要:

  • 我们要调试哪种测试应用程序或者框架
  • 我们设置了什么环境变量,以及将它们设置为什么值
  • 我们设置的参数(-SenTest All应该是参数,而不是环境变量)
  • 调试控制台中显示的完整错误是什么,而不仅仅是特定的故障

这将有助于诊断正在发生的事情。

乍一看,我们可能在DYLD_FALLBACK_FRAMEWORK_PATH中输入错误,因为这决定了如果无法解析@rpath,dyld将在哪里寻找SenTestingKit.framework二进制文件。知道将要设置的内容可能会有所帮助。

(PS是Xcode。)