Xcode 3.1 中的单元测试
Posted
技术标签:
【中文标题】Xcode 3.1 中的单元测试【英文标题】:Unit testing in Xcode 3.1 【发布时间】:2010-09-07 16:00:27 【问题描述】:我阅读了关于“单元测试 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 上进行单元测试的人能否详细说明需要做什么。这对我正在尝试做的事情有很大帮助。
【问题讨论】:
【参考方案1】:你不需要做这些事情来运行你的测试。
如果您正在为应用程序编写测试,您应该只需要为您的单元测试包目标设置 Test Host 和 Bundle Loader 构建设置,它们将作为构建的一部分运行。如果您正在为框架编写测试,您甚至不需要这样做,只需确保您的测试包链接到您的框架即可。
我假设您实际上是在谈论调试测试,而不仅仅是运行它们。如果是这样,请务必向我们提供以下信息:
您尝试调试哪种测试(应用程序或框架) 您设置了什么环境变量,以及您将它们设置为什么值 您设置了哪些参数(-SenTest All
应该是一个参数,而不是环境变量)
调试控制台中显示的完整错误是什么,而不仅仅是具体的故障
这将有助于诊断发生了什么。
乍一看,您的DYLD_FALLBACK_FRAMEWORK_PATH
中可能存在拼写错误,因为这决定了如果@rpath
无法解析,dyld
将在何处查找SenTestingKit.framework
二进制文件。知道它的设置可能会有所帮助。
(PS - 这是 Xcode。)
【讨论】:
以上是关于Xcode 3.1 中的单元测试的主要内容,如果未能解决你的问题,请参考以下文章
测试类的包返回 Xcode 10 中的主包,而不是单元测试包