Wednesday, May 2, 2012

MonkeyTalk Beta 3 Adds Hybrid Native/HTML App Scripting

This morning we pushed out the bits for MonkeyTalk Beta 3, the latest edition of our free and open source functional testing tool for iOS and Android. In addition to the proverbial "numerous bug fixes and stability improvements",  Beta 3 adds playback support for embedded webviews, ie, if you have a "hybrid" application containing native components as well as embedded html browser views, you can now script the interaction with the html seamlessly along with the native portions of the app.

We have mapped html elements to MonkeyTalk logical component types, so there is no need to distinguish within a script between what is native and what is html. For example, the command for tapping on a button looks the same regardless of whether you're scripting native Android, iOS, or html.

Button OK Tap

The above command will work with html buttons created with a button tag, as well as those created with an input tag. Other html elements are similarly mapped. At runtime, MonkeyTalk searches all displayed native and html components until it finds a displayed native or html button labeled OK.

The only big difference at present between native component and html webview handling in MonkeyTalk is that we do not yet support recording html element interactions, so these need to be composed manually without recording. MonkeyTalk of course makes it very easy to whip out a script from scratch, so even without the ability to record, this is a very powerful new feature. All other MonkeyTalk features including parameterization and data-driving are fully supported for html element scripting.

You can download MonkeyTalk Beta 3 from

Happy testing!

No comments: