Within IntroPro's RnD department we are designing and developing pretty complex prototypes and solutions that usually have Mobile Clients as a user interaction UI layer. When such type of a project is fast paced with resources constraints and pursues, mostly, for technology exploration and investigation goals; the requirements to the mobile application quality are generally rather loose. However, there are situations when a project emphasis is more on the visual represantation or exploitation of advanced features, that can be better depicted with a mobile application. In such cases, we have to put an effort to deliver a high quality user experience, that is always associated with extensive QA phases. Mobile clients are usually manifested by at least iOS and Android applications, but in our case we have an „exacerbated" situation since sometimes we also have TV oriented client.
In one particular project we have envisioned several long term iterations with an ever increasing number of features present in all 3 clients. Thus, the QA effort estimations seemed considerable even at the planning stage. It was immediately obvious that Mobile QA automation would be the only natural way. Let me remark, that here in IntroPro we are a bit fanatical about QA automation. That is why, we desperately find reasons to do it, even if it could be pragmatically skipped.
During frequent build release cycles we wanted to test all clients simultaneously; exploit the same test scenarios and test cases on all devices with a smooth addition of new tests, and most importantly painlessly run the regression test.
Appium Framework satisfied all our requirements giving additional benefit with its license, since our project was architected mostly on OSS components. Using aShot utility for comparing WebElements screenshots provided additional boost in testing speed to eradicate UI design and implementation issues on early phases. The accomplished quality of the project was an evident proof of the right strategy on QA automation investment.
This automation solution based on Appium will serve as a foundation for our Mobile Automation Test Suite in all future projects.