OCMock的意外行为需要iOS单元测试

时间:2015-07-22 12:56:29

标签: ios unit-testing ocmock

我有一个实现方法如下:

static Logger log = Logger.getLogger(MyClass.class);

我有一个测试用例如下:

- (IBAction)loginButtonTapped:(id)sender
{

    void (^SuccessBlock)(id, NSDictionary*) = ^(id response, NSDictionary* headers) {

    };
    void (^ErrorBlock)(id, NSDictionary*, id) = ^(NSError* error, NSDictionary* headers, id response) {


    };
   [ClassName deleteWebService:@"www.google.com"
                                           data:nil
                               withSuccessBlock:SuccessBlock
                                 withErrorBlock:ErrorBlock];
}

代码1和代码2都给出了#34; Test Succeeded",代码1很明显,但我无法理解为什么代码2会发生。

1 个答案:

答案 0 :(得分:0)

您正在使用 expect-run-verify 方法(请参阅http://ocmock.org/reference/#strict-mocks-and-expectations),并且您正在设置mockClassObject的期望值,但您永远不会调用{{1}在verify上。这意味着代码1和代码2中的期望从未得到验证,因此测试不会失败。