Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mobile Testing and Mobile Automation at eBay


Published on

Published in: Technology
  • Be the first to comment

Mobile Testing and Mobile Automation at eBay

  1. 1. Mobile Testing and MobileAutomation at eBayMichael Palotas & Dominik DaryQuality Engineering EuropeeBay International AGSeptember 2012
  2. 2. eBay Inc. Facts Founded in 1995 Based in San Jose, California 27770 Employees worldwide
  3. 3. Mobile FactsMobile Facts: Mobile Fun Facts: 100,000,000 downloads Every 30 seconds, a woman’s handbag is purchased on eBay of eBay Inc’s apps Mobile. Every 2 minutes, a tablet is Mobile transaction volume bought through eBay Mobile. will double in 2012 to 10 billion USD Every week, more than 8,000 cars and 340,000 car parts are 1,7 million items sold through eBay’s mobile apps. are listed with using mobile 7,493 tablets sold weekly from apps every week April – June; enough to cover the surface of 3 Olympic-sized pools.
  4. 4. Who we are Michael Palotas Head of Quality Engineering Europe E-mail: Dominik Dary Staff Software Engineer in Test E-mail:
  5. 5. Agenda1. Challenges in Mobile Testing2. Manual Mobile Testing3. Our Requirements for Mobile Test Automation4. Test Automation of the Mobile Web, Android Apps & iOS Apps5. Conclusion
  6. 6. First Challenge: Localization
  7. 7. Second Challenge: Device Diversity
  8. 8. Devices vs. Emulators
  9. 9. Manual Mobile Testing Feature testing is manual Concentrate on top 5 devices Functionality, Layout, User Experience and Localization In depth EU specific domain knowledge
  10. 10. The importance of parallel Test Execution • Multiple Apps • 12 European Sites • iOS Devices • iPhone vs. iPad • Version • Android Devices • Manufactures • Screen Sizes • OS ModificationsPicture Source:
  11. 11. Technical High Level Overview of the Web Tests
  12. 12. Mobile Test Automation Requirements• Use the Load Balancer Features of the Selenium Grid2 to execute the End-to-End Tests in parallel• Manage multiple applications / versions / languages• The Mobile App should not need to be modified (e.g. like adding a test server)• Mobile App Runtime Inspection Support
  13. 13. Testing of eBay‘s Mobile ProductsAndroid Mobile Web Android Native App iOS Native App
  14. 14. Test Automation of the Mobile Web We use Selenium and specifically the AndroidDriver and the iPhoneDriver Test Cases are written in Java and are similar to web tests Tests are only executed on Emulators
  15. 15. Android Mobile Web Test Infrastructure TestNG Test Selenium Grid http http Jetty Server Hub Android Driver WebView Android Server QE Machine Backend Device
  16. 16. Page Tests Flow ObjectsObjects Mobile Web Test Case
  17. 17. Test Automation of the Android Apps We have created the Open Source project Calabash-Driver Calabash-Driver integrates Calabash-Android into the Selenium Grid Calabash-Driver offers a convenient Webdriver like Java API for writing tests
  18. 18. Test Automation of Android Apps Selenium Grid TestNG Hub Test http http Instrumentation http Backend Calabash Calabash Android Jetty Server Driver Connecto r eBay App ADB Connec- USB tion QE Machine Device Calabash Server Backend
  19. 19. Dialog Tests Flow ObjectsObjects Android App Test Case
  20. 20. Test Automation of the iOS Apps We have created the Open Source project iOS-Driver iOS-Driver integrates Apple’s official tool UI Automation into the Selenium Grid iOS-Driver offers a convenient Webdriver like Java API for writing tests
  21. 21. Test Automation of iOS Apps Selenium Grid TestNG Hub Test http http Instru- iOS eBay App Jetty Server ments Driver Manager Apple‘s UI Automa- tion QE Machine iOS Simulator iOS-Server Backend
  22. 22. Dialog Flow TestsObjects Objects iOS App Test Case
  23. 23. Demo
  24. 24. Advantages of Calabash-Driver & iOS-Driver Solutions are integrated into the Selenium Grid which enables us to scale The concept of automated testing the Web, Win32, mobile Web and native apps is the same Fast Rampup for the testers and quick return on investment Both Solutions are supporting the interaction with elements based on the L10n resource bundle key
  25. 25. Fork us at Github
  26. 26. Conclusion No single automation solution for mobile Web, Android and iOS apps – and that’s ok! Invest into Scalability by Virtualization Buy the top devices Open source is your best friend!Interested in our solutions? Contribute to our projects!
  27. 27. Thank You!Questions or Comments?