Sikuli for iOS

Created by RaiMan on on 2013-01-30
Keywords:

posted by HAL-9000 (https://launchpad.net/~coldlogic)
at https://answers.launchpad.net/sikuli/+question/219849 comment #8
-----------------------------------------

Just to add something about iOS Sims here, the Selenium driver is for webkit frames hosted in the Simulator. Anything using Apple iOS API's (like Cocoa interface objects) will not be 'visible' to the Selenium driver.

Only way I am aware to run Java auto-scripts running actual iOS apps is to use Xcode Instrument's UIAutomation tool. Just open up Instruments, select iOS, then the Automation template - you just start building a script from there (I believe there is also a UI interaction recorder). It runs straight Java and is probably the most conducive environment for iOS automation with that language. As a bonus, you can run those tests at an actual device.

On the downside, in my experience, it generally produces tests that are much more "brittle" than Sikuli Jython tests via the Sim, and you miss actual UI acceptance (nothing is 'seen' by Instruments beyond objects in code). This is why I stick with Sikuli :).

There is a pure API Sikuli package for Java now though (http://code.google.com/p/sikuli-api/) that maybe-might integrate with the Instruments tool, though I'm not sure if it does (interesting experiment to try).