- Stubbing class methods is simpler. With OCMock, I needed to create a special class (one per project - similar to this) to do method swizzling. No such problem with Kiwi - just [MyClass stub:@selector(doFoo) andReturn:myBar];
- Mock failures with Kiwi show up on the line that failed in Xcode (they showed up in strange places with OCMock).
- Kiwi's test failures produce descriptive, unambiguous error messages (as opposed to the not-so-helpful messages from OCMock & OCUnit).
- Syntax. should, equal, stub, mock, and more (rather than STAssertEqualObjects and other not-so-easy-to-read macros & methods). Check out the first code sample on the Setup page to decide for yourself.
- No need to [mock verify].
Update: The latest version of Kiwi does support debugging in blocks, so the Blocks Alternative is no longer necessary for debugging. I've removed the outdated information from this post.