猕猴桃规格单位测试:实例方法'-attachToVerifier:验证程序:'未找到

时间:2011-12-15 18:18:53

标签: objective-c cocoa-touch unit-testing tdd bdd

我正在建立一些新西兰测试并得到一个我无法解释的警告。我是新来的人。

我有一个模拟对象设置:

id conversationMock = [KWMock mockForProtocol:@protocol(Conversation)];
[conversationMock stub:@selector(end)];

在我的控制器中,有一个名为“对话”的属性:

@interface MyController ()
@property (nonatomic, assign) id<Conversation> conversation;
@end

将模拟分配给属性,然后在规范中检查对话是否调用方法“end”:

it(@"should end conversation", ^{
  [[[myController.conversation] should] receive] end];
  [myController stopTalking];
});

编译器(LLVM 3.0)显示警告:“实例方法'-attachToVerifier:验证程序:'未找到'

这是什么原因?这是我需要解决的问题吗? (测试运行正常,检查方法调用结束工作正常)

3 个答案:

答案 0 :(得分:12)

将ID转发给NSObject会消除警告:

[[(NSObject *)[myController.conversation]应该]收到]结束];

答案 1 :(得分:9)

您需要做的是:

build settings -> Other Linker flags

添加标记:-all_load

答案 2 :(得分:1)

根据@ Komposr的回答,我看了几个与Kiwi有关的项目,发现我需要做以下事情:

  

构建设置 - &gt;其他链接标志

添加标志:-ObjC

注意 不使用 CocoaPods。我已经下载并编译了Kiwi作为静态库,我包括...