Tag Archives: Titanium

Cross-Platform Mobile Testing with the Page Object Model

via Cross Platform Mobile Testing with the Page Object Model.

Many of our clients take a hybrid approach to app development. By hybrid we mean using technologies such as Phonegap, Cordova, Appcelerator Titanium, and Sencha as part of their technology stack. Hybrid apps can benefit from cross platform mobile testing.

Companies choose the hybrid approach for several reasons. A major factor is the ability to release on multiple platforms at the same time. The decision of whether or not to make a hybrid app comes down to the skill sets of the various team members developing the app. There are also some downsides to going non-native, such as the possibility of limited features, rendering and responsiveness issues, or crashes on certain devices.

Our customers have asked us about the best testing practices for identifying and addressing these challenges. Our response is cross platform mobile testing. Since hybrid apps are developed from a common code base, it makes perfect sense to have functional UI test cases that can be executed on multiple platforms.

Video: Cross-Platform Native Development with Titanium

Using iOS Visit Events in Titanium

via Using iOS Visit Events in Titanium | benCoding.com.

It seems every app has its own way to handle Geo Location.  In many of my cases, your destination is more important then your journey. In iOS 8 Apple provides the CLVisit API specifically designed to provide this type of functionality.  Events are generated when you arrive to a location, and another is generated when you leave.  This provides a very battery friendly approach to solving place based Geo Location problems.

So how do you use this in Titanium?  Like almost any other Titanium requirement you run into there is a module already available.  You can download the Ti.GeoVisits module to use this functionality today.  I used the example app.js for a week and found that the Visit event fired reliably after I was in a single location for more then 10 minutes and about 5 minutes after leaving a location.  This wait time does cause for quick stops such as picking up take away to be missed.  Although this approach has trade offs, it virtually has no impact on battery life.

Below is a record of my tests over the last 9 days.  I’d encourage you to try the same test yourself.  As simulator testing isn’t really a meaningful option for Geo Location apps, I would suggest installing the example app.js and heading out to do a few errands.

REPL for Titanium

REPL for Titanium. Inspired heavily by node.js’s own repl. Click to Read>>