Aroj and I presented our talk “One page to test them all - A cross platform mobile automation framework!”
What was our talk about?
We are working on a project, is a mobile app for iOS, Android and Mobile web. This app is for famous airline in USA.
- App is mixture of pure native screens as well as webviews.
- Each platform has its own tools for UI automation (Calabash for android, Calabash Cucumber for ios and Watir for Mobile web)
- Each platform behavior is different. (touch on droid/ios, click on web)
- Different UX interaction pattern. (Navigation drawer for droid, tab bar in iOS and Nav bar in mobile web)
Though above things vary for our app, each screen on different platform exposes similar functionality. There is example provided by calabash-x-platform and they have suggested to use different page object for each platform, but you can reuse feature file, step definition.
In spite of above mentioned variations, we wanted to have single page object for our automation suite, keeping flavour of the famous Page object pattern, which will enable us to add automation quickly for all, instead of spending equal amount of time for all 3 platform!
In short we wanted to have common feature file, common step definition and common page object as well!
What we did? How did it save time to add automation for 3 platforms? What is our learning? … and this is what our talk about!
Role play in presentation
We were not sure how to present this and still deliver the intent in a proper way! And Aroj came up with this idea of role play!
We presented a talk as if we are pairing. While pairing, we think different approaches, discuss pros and cons of each and finally decide to go with one of the approach! Same we did as part of our presentation!
Check out our talk here:
Check out our slides here:
And after all this …
Thank you Aroj, for being such a great pair and mentor; vodQA Bangalore team, for taking efforts to take dry runs and giving us feedback and people who have attended this talk!