2009-07-13 45 views
6

我試圖在我的應用程序的測試中嘲笑一個UITabBarController。我在其他地方定義的類中定義了一個類別方法,這個文件在我的測試類中與ocmock一起導入。我想要這麼是這樣的:我如何獲得OCMock讓我在UIKit類中存根類別方法?

- (void) setUp 
{ 
    id mockTabController = [OCMockObject mockForClass:[UITabBarController class]]; 
    [[[mockTabController stub] andReturn:nil] displayedViewController]; 
    // displayedViewController is the category method 
} 

但是當我做和測試獲取對存根電話,我得到一個錯誤說:

[NSProxy doesNotRecognizeSelector:displayedViewController] called! 

有沒有具體的我需要的東西是否允許ocmock識別內置框架類中的類別方法?

回答

16

我想出了問題;在其中定義了類別類別的文件在我的項目中不在正確的目標中。它是主要目標,但不是單元測試目標。將它添加到正確的位置使其能夠順暢地工作。

+3

感謝您記錄您自己的解決方案。它幫助我:) – nacho4d 2011-12-20 05:19:30