2012-10-02 137 views
1

我成功地将猕猴桃测试框架添加到使用Cocoapods的现有项目中。用现有的项目+ cocoapod依赖关系设置猕猴桃

target :KiwiUnitTest do 
    pod 'Kiwi' 
end 

我可以创建一个非常基本的测试,并将它传递:

describe(@"A simple test", ^{ 
    context(@"when adding 1 + 1", ^{ 
     it(@"should equal 2", ^{ 
      [[theValue(1+1) should] equal:theValue(2)]; 
     }); 
    }); 
}); 

然而,当我试图测试我的车型之一,事情土崩瓦解。

我包括我的天赋我的模型的.h文件中:

#import "MyModel.h" 

然后整体转换的错误进来时,我跑我的测试。

,我想不出有几件事情:

  • 如前所述,我说我的测试目标,以现有的项目。我如何与我的新测试目标共享我的模型类?只需在Build Phases/Compile Sources中选择.m文件?
  • 如果我的模型使用其他模型/帮助类/类别,我是否也需要与测试目标共享这些模型/帮助类/类别?我是否还需要将所有这些文件导入到我的spec文件中?
  • 我的模型依赖于AFNetworking,我也将它安装为一个Cocoapod。我如何在测试目标中使用该库?我试过简单地导入AFNetworking.h,但那显然失败了。

谢谢!

+0

我真的希望我也能得到这个工作。我已经按照Kiwi wiki上的说明设置了它,并且它可以工作 - 直到我引入我自己的代码/导入。啊。 –

回答

0
  • 我读过的其他意见,但我们结束了包括在“编译源代码”的测试目标的所有非测试.m文件,除了测试代码的.m文件
  • 添加测试目标后,您可能需要再次运行pod install。它应该为你设置测试目标和正常目标的依赖关系。
+0

那么,那种工作。我将所有非viewController文件添加到“编译源代码”,但运行pod安装似乎没有任何影响。我仍然收到大量的错误,所以我基本上在我的测试目标中复制了“链接库与库”部分。这摆脱了我看到的所有错误,但现在我得到了'加载错误... KiwiUnitTest:dlopen(...)未找到符号:_objc_setProperty_nonatomic ... IDEBundleInjection.c:加载包(... KiwiUnitTest错误。 octest)。好东西我在一个分支上,因为现在这一切都是一团糟。 – djibouti33