My own plug which I apologize for, but there's a good collection of interviews with iOS developers and the tools they use here: http://www.objectivesee.com/ that I genuinely think anyone reading these comments would find interesting.
Subliminal allows you to write tests in Objective-C that interface directly with your app. This makes your tests be more powerful (can test things not visible to the user, and can simulate activity that UIAutomation can't (like a credit card swipe, which is why KIF was invented)).
More amazing is that you get the benefits of static typing. Instead of stringly-typed accessibility identifiers, you can use string constants (NSString * const kIdentifier = @"blah").
It runs by bridging UIAutomation and Objective-C, so its more reliable than KIF, which has to use private API to simulate touches. This doesn't work correctly for gesture recognizers and is very fragile.
I've been using UIAutomation to automate screenshot generation and make it easier to keep support documents up-to-date. Do you know if this works for that? Straight UIAutomation times out a lot doing that and often requires multiple runs to get everything.
Yes. You can send Javascript to be evaluated by UIAutomation so it has all the capabilities of that UIAutomation does. There's a PR that adds this natively https://github.com/inkling/Subliminal/pull/118, but you can also just implement it yourself quite easily: