针对使用库的应用程序进行GHUnit测试

时间:2011-06-01 11:42:11

标签: objective-c ios unit-testing gh-unit

我正在尝试基于我使用的一个iOS应用程序构建一些GHUnit测试,它使用ProtocolBuffers作为库访问。我遇到了很多链接器问题,我通过将源文件从应用程序添加到“编译源”构建阶段而慢慢消失,但是现在我已经添加了应用程序中的所有相关内容,我发现我似乎无法链接到ProtocolBuffers。

我已阅读GH-Unit for unit testing Objective-C code, why am I getting linking errors?,其中海报似乎已根据底部的README更新修复了他的情况。由于我有一个混合 - 我将GHUnit连接到一个应用程序和一个库,我开始假设我应该添加ProtocolBuffers输出作为依赖,除了将所有应用程序源文件添加到我的“编译源”构建阶段

这没效果。我继续得到链接器错误,清楚地表明链接器没有从ProtocolBuffers库中找到符号。我无法添加ProtocolBuffers源文件,因为它们不在此项目中,甚至将#import“ProtocolBuffers.h”添加到我的tests.pch文件中也不起作用。

我现在难过了。有什么建议? GHUnit看起来很棒但是,因为它似乎总是使用Xcode / ObjC测试工具,所以进入“Hello World”会比我期望的更麻烦。

1 个答案:

答案 0 :(得分:1)

您是否选择了目标“测试”并将库添加到“构建阶段”选项卡并链接库选择?我也遇到了很大困难。我的问题是我发现链接器错误,它从我的应用程序代码中找不到我的类符号,其中我将应用程序目标添加为依赖项。测试目标现在构建它们并且它首先构建应用程序目标,然后在测试文件本身中使用的对象(来自我的应用程序)本身不链接或者它表示架构i386的未定义符号。

密切留意任何GHUnit链接器错误的答案,希望我们能尽快得到答案。

大卫