The mobile world is growing, and it has never been easier to test applications—native, web, or hybrid—using Appium, a free, open-source implementation of the Selenium protocol for automating mobile devices. I will show how Appium, which is in active development and recently shipped version 1.0, allows developers and testers to harness all the power of the native testing frameworks provided by the mobile device manufacturers, but within the context familiar to Selenium users.
Further, Appium provides a very good opportunity for looking at the challenges for a technology designed to automate web browsers as it moves into a new realm. I will discuss how functionality was repurposed for this new context, as well as the ways in which the protocol was extended and made more flexible in light of the the expanded use case.
As a case study in extended functionality, I will discuss the gesture API, which allows a standardized way to automate the sorts of advanced mutli-finger gestures used on modern mobile devices.