SlideShare uma empresa Scribd logo
1 de 27
Mobile Testing and Mobile
Automation at eBay

Michael Palotas & Dominik Dary
Quality Engineering Europe
eBay International AG


September 2012
eBay Inc. Facts


   Founded in 1995

   Based in San Jose, California

   27770 Employees worldwide
Mobile Facts

Mobile 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.
Who we are

             Michael Palotas
             Head of Quality Engineering Europe
             E-mail: mpalotas@ebay.com



             Dominik Dary
             Staff Software Engineer in Test
             E-mail: ddary@ebay.com
Agenda

1. Challenges in Mobile Testing
2. Manual Mobile Testing
3. Our Requirements for Mobile Test
  Automation
4. Test Automation of the Mobile
  Web, Android Apps & iOS Apps
5. Conclusion
First Challenge: Localization
Second Challenge: Device Diversity
Devices vs. Emulators
Manual Mobile Testing

   Feature testing is manual

   Concentrate on top 5 devices

   Functionality, Layout, User
   Experience and Localization

   In depth EU specific domain
   knowledge
The importance of parallel Test Execution

  •     Multiple Apps
  •     12 European Sites
  •     iOS Devices
             •     iPhone vs. iPad
             •     Version

  •     Android Devices
             •     Manufactures
             •     Screen Sizes
             •     OS Modifications




Picture Source: http://www.flickr.com/photos/ippei-janine/483345027/
Technical High Level Overview of the Web Tests
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
Testing of eBay‘s Mobile Products
Android Mobile Web   Android Native App   iOS Native App
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
                             http://code.google.com/p/selenium/wiki/IPhoneDriver
                             http://code.google.com/p/selenium/wiki/AndroidDriver
Android Mobile Web Test Infrastructure



  TestNG
   Test
                               Selenium Grid     http
                        http                            Jetty Server
                                    Hub
 Android
  Driver
                                                         WebView


                                                          Android Server
           QE Machine                  Backend                    Device
Page                    Tests
          Flow Objects
Objects                          Mobile Web Test Case
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                        http://calabash-driver.github.com
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
Dialog                   Tests
          Flow Objects
Objects                          Android App Test Case
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                         https://github.com/freynaud/ios-driver
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
Dialog     Flow     Tests
Objects   Objects           iOS App Test Case
Demo
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
Fork us at Github


   http://calabash-driver.github.com

   https://github.com/freynaud/ios-driver
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!
Thank You!
Questions or Comments?

Mais conteúdo relacionado

Mais procurados

Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioMizanur Sarker
 
Iphone client-server app with Rails backend (v3)
Iphone client-server app with Rails backend (v3)Iphone client-server app with Rails backend (v3)
Iphone client-server app with Rails backend (v3)Sujee Maniyam
 
13 top react native animation libraries to create stellar ux
13 top react native animation libraries to create stellar ux13 top react native animation libraries to create stellar ux
13 top react native animation libraries to create stellar uxKaty Slemon
 
Location based services 10
Location based services   10Location based services   10
Location based services 10Michael Shrove
 
All Things API Presentation - Gordon Weakleim [HomeAway]
All Things API Presentation - Gordon Weakleim [HomeAway]All Things API Presentation - Gordon Weakleim [HomeAway]
All Things API Presentation - Gordon Weakleim [HomeAway]Cloud Elements
 
How to optimize your react native app performance
How to optimize your react native app performance How to optimize your react native app performance
How to optimize your react native app performance Katy Slemon
 
StackLabs-DataDriven Labs - iPhone App Development Training in Mohali
StackLabs-DataDriven Labs - iPhone App Development  Training in MohaliStackLabs-DataDriven Labs - iPhone App Development  Training in Mohali
StackLabs-DataDriven Labs - iPhone App Development Training in MohaliArcadian Learning
 
App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)Sameera Gayan
 
CIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsCIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsICF CIRCUIT
 
The API Facade Pattern: People - Episode 4
The API Facade Pattern: People - Episode 4The API Facade Pattern: People - Episode 4
The API Facade Pattern: People - Episode 4Apigee | Google Cloud
 
Building your first android app using Xamarin
Building your first android app using XamarinBuilding your first android app using Xamarin
Building your first android app using XamarinGill Cleeren
 
Enterprise apps using ruby droid con berlin 2012
Enterprise apps using ruby droid con berlin 2012Enterprise apps using ruby droid con berlin 2012
Enterprise apps using ruby droid con berlin 2012Droidcon Berlin
 
Google App Engine for Java
Google App Engine for JavaGoogle App Engine for Java
Google App Engine for JavaLars Vogel
 
Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms Russ Fustino
 
Pepperoni – A framework for spicing up your mobile apps with React Native
Pepperoni – A framework for spicing up your mobile apps with React NativePepperoni – A framework for spicing up your mobile apps with React Native
Pepperoni – A framework for spicing up your mobile apps with React NativeFuturice
 

Mais procurados (20)

CI & CD- mobile application
CI & CD- mobile applicationCI & CD- mobile application
CI & CD- mobile application
 
Xamarin v.Now
Xamarin v.NowXamarin v.Now
Xamarin v.Now
 
Cross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual StudioCross-Platform Development using Angulr JS in Visual Studio
Cross-Platform Development using Angulr JS in Visual Studio
 
Android part1
Android part1Android part1
Android part1
 
Iphone client-server app with Rails backend (v3)
Iphone client-server app with Rails backend (v3)Iphone client-server app with Rails backend (v3)
Iphone client-server app with Rails backend (v3)
 
13 top react native animation libraries to create stellar ux
13 top react native animation libraries to create stellar ux13 top react native animation libraries to create stellar ux
13 top react native animation libraries to create stellar ux
 
Workshop Ionic Framework - CC FE & UX
Workshop Ionic Framework - CC FE & UXWorkshop Ionic Framework - CC FE & UX
Workshop Ionic Framework - CC FE & UX
 
Location based services 10
Location based services   10Location based services   10
Location based services 10
 
All Things API Presentation - Gordon Weakleim [HomeAway]
All Things API Presentation - Gordon Weakleim [HomeAway]All Things API Presentation - Gordon Weakleim [HomeAway]
All Things API Presentation - Gordon Weakleim [HomeAway]
 
How to optimize your react native app performance
How to optimize your react native app performance How to optimize your react native app performance
How to optimize your react native app performance
 
StackLabs-DataDriven Labs - iPhone App Development Training in Mohali
StackLabs-DataDriven Labs - iPhone App Development  Training in MohaliStackLabs-DataDriven Labs - iPhone App Development  Training in Mohali
StackLabs-DataDriven Labs - iPhone App Development Training in Mohali
 
App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)App developer as a Web developer (ROROSyd - Jul 15)
App developer as a Web developer (ROROSyd - Jul 15)
 
CIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM AppsCIRCUIT 2015 - Hybrid App Development with AEM Apps
CIRCUIT 2015 - Hybrid App Development with AEM Apps
 
The API Facade Pattern: People - Episode 4
The API Facade Pattern: People - Episode 4The API Facade Pattern: People - Episode 4
The API Facade Pattern: People - Episode 4
 
Building your first android app using Xamarin
Building your first android app using XamarinBuilding your first android app using Xamarin
Building your first android app using Xamarin
 
Enterprise apps using ruby droid con berlin 2012
Enterprise apps using ruby droid con berlin 2012Enterprise apps using ruby droid con berlin 2012
Enterprise apps using ruby droid con berlin 2012
 
Google App Engine for Java
Google App Engine for JavaGoogle App Engine for Java
Google App Engine for Java
 
Eclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three RuntimesEclipse - Single Source;Three Runtimes
Eclipse - Single Source;Three Runtimes
 
Introduction to Xamarin Forms
Introduction to Xamarin Forms Introduction to Xamarin Forms
Introduction to Xamarin Forms
 
Pepperoni – A framework for spicing up your mobile apps with React Native
Pepperoni – A framework for spicing up your mobile apps with React NativePepperoni – A framework for spicing up your mobile apps with React Native
Pepperoni – A framework for spicing up your mobile apps with React Native
 

Semelhante a Mobile Testing and Mobile Automation at eBay

The Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native AppsThe Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native AppsSauce Labs
 
Designing an effective hybrid apps automation framework
Designing an effective hybrid apps automation frameworkDesigning an effective hybrid apps automation framework
Designing an effective hybrid apps automation frameworkAndrea Tino
 
Calabash Driver Lightning Talk from the mobile test summit.
Calabash Driver Lightning Talk from the mobile test summit.Calabash Driver Lightning Talk from the mobile test summit.
Calabash Driver Lightning Talk from the mobile test summit.Dominik Dary
 
Calabash-Driver Lightning Talk by Dominik Dary
Calabash-Driver Lightning Talk by Dominik DaryCalabash-Driver Lightning Talk by Dominik Dary
Calabash-Driver Lightning Talk by Dominik Darymobiletestsummit
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumSelenium Cucumber
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12Sanjeev Sharma
 
Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Sauce Labs
 
DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013Sanjeev Sharma
 
React native automation testing
React native automation testingReact native automation testing
React native automation testingJayad Aadrit
 
IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps Sanjeev Sharma
 
Comprehensive List of Open Source QA Tools
Comprehensive List of Open Source QA ToolsComprehensive List of Open Source QA Tools
Comprehensive List of Open Source QA ToolsAshish Bansal
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with AppiumManoj Kumar Kumar
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaEdureka!
 
Automated Mobile Testing using Appium.pdf
Automated Mobile Testing using Appium.pdfAutomated Mobile Testing using Appium.pdf
Automated Mobile Testing using Appium.pdfAnand722237
 

Semelhante a Mobile Testing and Mobile Automation at eBay (20)

The Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native AppsThe Future of Selenium Testing for Mobile Web and Native Apps
The Future of Selenium Testing for Mobile Web and Native Apps
 
Designing an effective hybrid apps automation framework
Designing an effective hybrid apps automation frameworkDesigning an effective hybrid apps automation framework
Designing an effective hybrid apps automation framework
 
Calabash Driver Lightning Talk from the mobile test summit.
Calabash Driver Lightning Talk from the mobile test summit.Calabash Driver Lightning Talk from the mobile test summit.
Calabash Driver Lightning Talk from the mobile test summit.
 
Calabash-Driver Lightning Talk by Dominik Dary
Calabash-Driver Lightning Talk by Dominik DaryCalabash-Driver Lightning Talk by Dominik Dary
Calabash-Driver Lightning Talk by Dominik Dary
 
Mobility testing
Mobility testingMobility testing
Mobility testing
 
SatishKumar_Prolifics
SatishKumar_ProlificsSatishKumar_Prolifics
SatishKumar_Prolifics
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appium
 
ATAGTR2017 Appium
ATAGTR2017 AppiumATAGTR2017 Appium
ATAGTR2017 Appium
 
Dev ops for cross platform mobile modeveast 12
Dev ops for cross platform mobile   modeveast 12Dev ops for cross platform mobile   modeveast 12
Dev ops for cross platform mobile modeveast 12
 
Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)Using Selenium to Test Native Apps (Wait, you can do that?)
Using Selenium to Test Native Apps (Wait, you can do that?)
 
DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013DevOps for Mobile - DevOpsDays, NY, 2013
DevOps for Mobile - DevOpsDays, NY, 2013
 
React native automation testing
React native automation testingReact native automation testing
React native automation testing
 
IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps IBM Innovate DevOps for Mobile Apps
IBM Innovate DevOps for Mobile Apps
 
Comprehensive List of Open Source QA Tools
Comprehensive List of Open Source QA ToolsComprehensive List of Open Source QA Tools
Comprehensive List of Open Source QA Tools
 
Mobile Automation with Appium
Mobile Automation with AppiumMobile Automation with Appium
Mobile Automation with Appium
 
Next level of Appium
Next level of AppiumNext level of Appium
Next level of Appium
 
Tahir_Resume_Selenium
Tahir_Resume_SeleniumTahir_Resume_Selenium
Tahir_Resume_Selenium
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | Edureka
 
Automated Mobile Testing using Appium.pdf
Automated Mobile Testing using Appium.pdfAutomated Mobile Testing using Appium.pdf
Automated Mobile Testing using Appium.pdf
 
Expo - Zero to App.pptx
Expo - Zero to App.pptxExpo - Zero to App.pptx
Expo - Zero to App.pptx
 

Mais de Michael Palotas

Berlin Selenium Meetup - Galen Framework
Berlin Selenium Meetup -  Galen FrameworkBerlin Selenium Meetup -  Galen Framework
Berlin Selenium Meetup - Galen FrameworkMichael Palotas
 
Selenium - The page object pattern
Selenium - The page object patternSelenium - The page object pattern
Selenium - The page object patternMichael Palotas
 
Berlin Selenium Meetup - A quick introduction to Selenium
Berlin Selenium Meetup - A quick introduction to SeleniumBerlin Selenium Meetup - A quick introduction to Selenium
Berlin Selenium Meetup - A quick introduction to SeleniumMichael Palotas
 
Zürich selenium meetup mobile and web automation under one umbrella
Zürich selenium meetup mobile and web automation under one umbrellaZürich selenium meetup mobile and web automation under one umbrella
Zürich selenium meetup mobile and web automation under one umbrellaMichael Palotas
 
Agile breakfast St. Gallen - Mindset. Skillset. Toolset
Agile breakfast St. Gallen - Mindset. Skillset. ToolsetAgile breakfast St. Gallen - Mindset. Skillset. Toolset
Agile breakfast St. Gallen - Mindset. Skillset. ToolsetMichael Palotas
 
Mobile Test Automation using one API and one infrastructure
Mobile Test Automation using one API and one infrastructureMobile Test Automation using one API and one infrastructure
Mobile Test Automation using one API and one infrastructureMichael Palotas
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopMichael Palotas
 
Agile bodensee - Agile Testing: Bug prevention vs. bug detection
Agile bodensee - Agile Testing: Bug prevention vs. bug detectionAgile bodensee - Agile Testing: Bug prevention vs. bug detection
Agile bodensee - Agile Testing: Bug prevention vs. bug detectionMichael Palotas
 
Testing in the new world-bug prevention vs. bug detection
Testing in the new world-bug prevention vs. bug detectionTesting in the new world-bug prevention vs. bug detection
Testing in the new world-bug prevention vs. bug detectionMichael Palotas
 
Mobile test automation with Selenium, Selendroid and ios-driver
Mobile test automation with Selenium, Selendroid and ios-driverMobile test automation with Selenium, Selendroid and ios-driver
Mobile test automation with Selenium, Selendroid and ios-driverMichael Palotas
 
German Testing Day Keynote - Testing at ebay - a look at a rather unconvent...
German Testing Day Keynote  - Testing at ebay  - a look at a rather unconvent...German Testing Day Keynote  - Testing at ebay  - a look at a rather unconvent...
German Testing Day Keynote - Testing at ebay - a look at a rather unconvent...Michael Palotas
 
Mobile WebDriver Selendroid
Mobile WebDriver SelendroidMobile WebDriver Selendroid
Mobile WebDriver SelendroidMichael Palotas
 
Scrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindsetScrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindsetMichael Palotas
 
EBAY - A LOOK BEHIND THE SCENES
EBAY -  A LOOK BEHIND THE SCENESEBAY -  A LOOK BEHIND THE SCENES
EBAY - A LOOK BEHIND THE SCENESMichael Palotas
 
JAVA User Group Bern - Selenium
JAVA User Group Bern  - SeleniumJAVA User Group Bern  - Selenium
JAVA User Group Bern - SeleniumMichael Palotas
 
ebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut Potsdamebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut PotsdamMichael Palotas
 
How we Test at eBay Europe
How we Test at eBay EuropeHow we Test at eBay Europe
How we Test at eBay EuropeMichael Palotas
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedMichael Palotas
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsMichael Palotas
 
Test Automation and Innovation with Open Source Tools
Test Automation and Innovation with Open Source ToolsTest Automation and Innovation with Open Source Tools
Test Automation and Innovation with Open Source ToolsMichael Palotas
 

Mais de Michael Palotas (20)

Berlin Selenium Meetup - Galen Framework
Berlin Selenium Meetup -  Galen FrameworkBerlin Selenium Meetup -  Galen Framework
Berlin Selenium Meetup - Galen Framework
 
Selenium - The page object pattern
Selenium - The page object patternSelenium - The page object pattern
Selenium - The page object pattern
 
Berlin Selenium Meetup - A quick introduction to Selenium
Berlin Selenium Meetup - A quick introduction to SeleniumBerlin Selenium Meetup - A quick introduction to Selenium
Berlin Selenium Meetup - A quick introduction to Selenium
 
Zürich selenium meetup mobile and web automation under one umbrella
Zürich selenium meetup mobile and web automation under one umbrellaZürich selenium meetup mobile and web automation under one umbrella
Zürich selenium meetup mobile and web automation under one umbrella
 
Agile breakfast St. Gallen - Mindset. Skillset. Toolset
Agile breakfast St. Gallen - Mindset. Skillset. ToolsetAgile breakfast St. Gallen - Mindset. Skillset. Toolset
Agile breakfast St. Gallen - Mindset. Skillset. Toolset
 
Mobile Test Automation using one API and one infrastructure
Mobile Test Automation using one API and one infrastructureMobile Test Automation using one API and one infrastructure
Mobile Test Automation using one API and one infrastructure
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery Workshop
 
Agile bodensee - Agile Testing: Bug prevention vs. bug detection
Agile bodensee - Agile Testing: Bug prevention vs. bug detectionAgile bodensee - Agile Testing: Bug prevention vs. bug detection
Agile bodensee - Agile Testing: Bug prevention vs. bug detection
 
Testing in the new world-bug prevention vs. bug detection
Testing in the new world-bug prevention vs. bug detectionTesting in the new world-bug prevention vs. bug detection
Testing in the new world-bug prevention vs. bug detection
 
Mobile test automation with Selenium, Selendroid and ios-driver
Mobile test automation with Selenium, Selendroid and ios-driverMobile test automation with Selenium, Selendroid and ios-driver
Mobile test automation with Selenium, Selendroid and ios-driver
 
German Testing Day Keynote - Testing at ebay - a look at a rather unconvent...
German Testing Day Keynote  - Testing at ebay  - a look at a rather unconvent...German Testing Day Keynote  - Testing at ebay  - a look at a rather unconvent...
German Testing Day Keynote - Testing at ebay - a look at a rather unconvent...
 
Mobile WebDriver Selendroid
Mobile WebDriver SelendroidMobile WebDriver Selendroid
Mobile WebDriver Selendroid
 
Scrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindsetScrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindset
 
EBAY - A LOOK BEHIND THE SCENES
EBAY -  A LOOK BEHIND THE SCENESEBAY -  A LOOK BEHIND THE SCENES
EBAY - A LOOK BEHIND THE SCENES
 
JAVA User Group Bern - Selenium
JAVA User Group Bern  - SeleniumJAVA User Group Bern  - Selenium
JAVA User Group Bern - Selenium
 
ebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut Potsdamebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut Potsdam
 
How we Test at eBay Europe
How we Test at eBay EuropeHow we Test at eBay Europe
How we Test at eBay Europe
 
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learnedSwiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
 
Test Automation and Innovation with Open Source Tools
Test Automation and Innovation with Open Source ToolsTest Automation and Innovation with Open Source Tools
Test Automation and Innovation with Open Source Tools
 

Último

Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024TopCSSGallery
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 

Último (20)

Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024Top 10 Hubspot Development Companies in 2024
Top 10 Hubspot Development Companies in 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 

Mobile Testing and Mobile Automation at eBay

  • 1. Mobile Testing and Mobile Automation at eBay Michael Palotas & Dominik Dary Quality Engineering Europe eBay International AG September 2012
  • 2. eBay Inc. Facts Founded in 1995 Based in San Jose, California 27770 Employees worldwide
  • 3. Mobile Facts Mobile 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. Who we are Michael Palotas Head of Quality Engineering Europe E-mail: mpalotas@ebay.com Dominik Dary Staff Software Engineer in Test E-mail: ddary@ebay.com
  • 5. Agenda 1. Challenges in Mobile Testing 2. Manual Mobile Testing 3. Our Requirements for Mobile Test Automation 4. Test Automation of the Mobile Web, Android Apps & iOS Apps 5. Conclusion
  • 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. The importance of parallel Test Execution • Multiple Apps • 12 European Sites • iOS Devices • iPhone vs. iPad • Version • Android Devices • Manufactures • Screen Sizes • OS Modifications Picture Source: http://www.flickr.com/photos/ippei-janine/483345027/
  • 11. Technical High Level Overview of the Web Tests
  • 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. Testing of eBay‘s Mobile Products Android Mobile Web Android Native App iOS Native App
  • 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 http://code.google.com/p/selenium/wiki/IPhoneDriver http://code.google.com/p/selenium/wiki/AndroidDriver
  • 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. Page Tests Flow Objects Objects Mobile Web Test Case
  • 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 http://calabash-driver.github.com
  • 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. Dialog Tests Flow Objects Objects Android App Test Case
  • 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 https://github.com/freynaud/ios-driver
  • 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. Dialog Flow Tests Objects Objects iOS App Test Case
  • 23. Demo
  • 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. Fork us at Github http://calabash-driver.github.com https://github.com/freynaud/ios-driver
  • 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!

Notas do Editor

  1. Call out shapes can be found on pg. 56 and 57Arrows can be found on pg. 59
  2. Talk hereaboutwhywefocus on parallel execution.Weare asmallteamWehavetotest multiple appsfor multiple sites on different platformsWewantedtoadaptthelearningsfromthe web to mobile‚Build in Scalability“ veryimportant
  3. Talk hereaboutwhywefocus on parallel execution.Weare asmallteamWehavetotest multiple appsfor multiple sites on different platformsWewantedtoadaptthelearningsfromthe web to mobile‚Build in Scalability“ veryimportant
  4. Image size: 9” (width) x 5.17” (height)Right click and select “Change picture” to replace image
  5. Here Iwouldliketoshowsomeoftheautomationvideosofthecheckoutflowor do a live demo.