(http://developer.apple.com/library/ios/#documentation/Develo...)
2. Writing the UIAutomation scripts is really tedious (though it's much better in iOS [redacted]).
3. The UIAutomation tests ran very slowly.
4. Having to write all the tests in JavaScript isn't very flexible.
That said, just like UIAutomation, KIF stands on the shoulders of the great accessibility features in iOS. In many ways KIF is like an Objective-C version of UIAutomation.
Are accessibility labels the only way to reference views?
We're still considering the best way to implement gestures. There's some rudimentary support, but it's incomplete right now. Your input is welcome!
If the login failed for some reason, then step (4) would fail because it wouldn't be able to find the refresh button.
You can also add explicit verification steps, such as "wait for the view with the accessibility label 'Refresh'" if you want further validation.