1
我有兩個類。驗證從另一個對象調用方法OCMock
對象1:
- (void) methodA {
ObjectB objectB = [[ObjectB alloc] init];
[objectB methodB];
}
和目標2:
- (void) methodB {
// Does something
}
使用OCMock,我如何驗證methodA
電話methodB
?我設置測試了類似如下:
id mock = OCMClassMock([Object2 class]);
OCMStub([mock methodB).andReturn(nil);
[self.object1 methodA];
OCMVerify([mock methodB]);
的測試類測試object1,但我想,以驗證它調用對象2的方法。當運行這個測試時,我得到了失敗的消息:
Method methodB was not invoked.
我對於模擬/存根還是很新的。我構建測試錯誤是完全可能的。該模擬讓我有點困惑,因爲我正在測試Object1
,但試圖驗證Object2
上的內容。
我在設置這個測試時是否正確思考?如果不是,我該如何處理?