SlideShare a Scribd company logo
Implementing Test
Automation in Agile
Projects
Michael Palotas & Dominik Dary
Quality Engineering Europe
eBay International


April 2012
eBay Inc. Facts


   Founded in 1995

   Based in San Jose, California

   27770 Employees worldwide
Platform Facts

   104 million
   active buyers and sellers worldwide

   68 Billion USD
   transaction volume 2011

   2000 USD
   transaction volume every second
Data Facts

   9 petabytes of data
   In our Hadoop and Teradata clusters


   2 billion page views
   each day


   75 billion database calls
   each day
Mobile Facts

   70,000,000
   downloads of the eBay Inc. mobile apps

   5 billion USD
   transacted 2011 on mobile devices

   1 million items
   are listed with using mobile apps every week
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
Test Automation?

   To get early and instant Feedback


   We automate the regression tests


   It is our safety net to save time &
   this is reinvested into manual testing
Flip the testing triangle
                                  Manual
                                   Tests


       Manual Tests
                                 E2E
                                 Tests

      E2E Automation
          Tests             Integration Tests


          Unit
          Tests                Unit Tests




                                 Inspiration: http://patrickwilsonwelsh.com/?p=32
Our guide through this Presentation



                                         4. Lean Test Automation



                                    3. Test Implementation



                       2. Modeling of the Biz Domain Layer



         1. Design the Automated Test with Test Aspects
1. Design the Automated Tests with Test Aspects


Use Test Aspects**                  Advantages
• Test aspects briefly describe     • Clear overview for all team
  “why” and “what” has to be          members about test coverage
  tested, without describing        • Simplicity helps you to do
  “how”                               quick reviews and
• Enables for early testing           walkthroughs with your product
  because tests can be written at     owner
  the same time the user story is   • Enables you to identify manual
  created                             and automated test duplicates
• Test aspects are structurally     • Traceability between test
  derived                             cases and specification

                                    **Swiss Testing Day Presentation 2010: “Mit Testaspekten früh, intelligent und redundanzfrei testen” Melanie Späth
                                          Image Source: http://www.masternewmedia.org/images/social_software_impact_individual_organizations.jpg
Test Aspect Example
2. Modeling of the Biz Domain Layer

      Tests
                                •   Modularization and
                                    reuse of components:
   Flow Objects                     maintainable &
                       Biz
                       Domain       extendable e2e tests
                       Layer
   Page Objects
                                •   Crucial to have in
    Biz Domain Layer
                                    depth knowledge of
    WebDriver
                                    the domain
     Browser                    •   Enable data driven
                                    testing by generic test
                                    cases
Pages and Flows
      e-Commerce shopping site like eBay
                                   Select
      View                                        Order
                  Review          Payment
    Category                                     Summary
                                  Provider



     Search                         View           View
                  Update
      Item                        Category        Orderlist



     View          Delete
    Product

   View Item   Shopping Cart
     Page         Page         Checkout Page   Success Page
3. Test Implementation using Selenium
 Tests
 Flow Objects
Objects
 Page
Technical High Level Overview
Instant Feedback - Selenium Grid

Sequential Execution                                              Parallel Execution

                                                                                   Test   Test   Test      Test
 Parallel Execution




                                                              Parallel Execution
                                                                                   Test   Test   Test      Test


                      Test   Test   Test       Test    Test
                                                                                   Test   Test   Test      Test
                       1      2      3          …      4500

                                           Execution Time                                               Execution Time


Execution time:                                                   Execution time:
7000 minutes (~116 hours = ~5 days)                               60 minutes
                                                                  by using 150 Virtual Machines /
                                                                  Browsers using the WebDriver GRID


Footnote about the size of the Tests @eBay Europe:
- 4500 end-to-end regression test cases
- 2-3 minutes execution time for each
4. Lean Test Automation

Technical Debt                    Lean Test Automation
•   Activities that result in     •   Eliminate Waste         Definition of Done
    technical debt include        •   Build Quality In            Reviews
      •   Postponing
          documentation and
                                  •   Create Knowledge     Document the essentials
          writing tests           •   Defer Commitment     Don’t build a framework
      •   attending to TODO       •   Deliver Fast
          comments and
      •   tackling compiler and   •   Respect People             Long Leash
          static code analysis    •   Optimize the Whole
          warnings
•   Knowledge that isn't
    shared around the
    organization
•   Code that is too confusing
    to be modified easily
Conclusion

    Be clear why you want to automate

    Open source is your best friend
    Flip the testing triangle

    Treat automation as a software project

    Work with the right people

    Stay lean

    Test automation is much more than
    just your automation toolset!
Thank You!
Questions or Comments?

More Related Content

What's hot

Unit Testing, TDD and the Walking Skeleton
Unit Testing, TDD and the Walking SkeletonUnit Testing, TDD and the Walking Skeleton
Unit Testing, TDD and the Walking Skeleton
Seb Rose
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOS
Pablo Villar
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Mireia Sangalo
 
Software presentation
Software presentationSoftware presentation
Software presentation
JennaPrengle
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)
David Ehringer
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automationRomania Testing
 
Test Drive Development
Test Drive DevelopmentTest Drive Development
Test Drive Development
satya sudheer
 
Topic production code
Topic production codeTopic production code
Topic production code
Kavi Kumar
 
Test driven development
Test driven developmentTest driven development
Test driven development
Nascenia IT
 
Getting started with Test Driven Development
Getting started with Test Driven DevelopmentGetting started with Test Driven Development
Getting started with Test Driven Development
Ferdous Mahmud Shaon
 
TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriver
Mikalai Alimenkou
 
Software Quality via Unit Testing
Software Quality via Unit TestingSoftware Quality via Unit Testing
Software Quality via Unit Testing
Shaun Abram
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
John Blum
 
Test-Driven Development In Action
Test-Driven Development In ActionTest-Driven Development In Action
Test-Driven Development In Action
Jon Kruger
 
Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010
guest5639fa9
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Md. Enamul Haque Chowdhury
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
Mohammed Moishin
 
Best practices for writing good automated tests
Best practices for writing good automated testsBest practices for writing good automated tests
Best practices for writing good automated testsFelipe Lima
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!
Kaizenko
 

What's hot (19)

Unit Testing, TDD and the Walking Skeleton
Unit Testing, TDD and the Walking SkeletonUnit Testing, TDD and the Walking Skeleton
Unit Testing, TDD and the Walking Skeleton
 
Dependency Injection in iOS
Dependency Injection in iOSDependency Injection in iOS
Dependency Injection in iOS
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Software presentation
Software presentationSoftware presentation
Software presentation
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)
 
Programming skills for test automation
Programming skills for test automationProgramming skills for test automation
Programming skills for test automation
 
Test Drive Development
Test Drive DevelopmentTest Drive Development
Test Drive Development
 
Topic production code
Topic production codeTopic production code
Topic production code
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Getting started with Test Driven Development
Getting started with Test Driven DevelopmentGetting started with Test Driven Development
Getting started with Test Driven Development
 
TDD in functional testing with WebDriver
TDD in functional testing with WebDriverTDD in functional testing with WebDriver
TDD in functional testing with WebDriver
 
Software Quality via Unit Testing
Software Quality via Unit TestingSoftware Quality via Unit Testing
Software Quality via Unit Testing
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
 
Test-Driven Development In Action
Test-Driven Development In ActionTest-Driven Development In Action
Test-Driven Development In Action
 
Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
Best practices for writing good automated tests
Best practices for writing good automated testsBest practices for writing good automated tests
Best practices for writing good automated tests
 
TDD That Was Easy!
TDD   That Was Easy!TDD   That Was Easy!
TDD That Was Easy!
 

Similar to Implementing Test Automation in Agile Projects

Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
Dominik Dary
 
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
Michael Palotas
 
Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBayDominik Dary
 
Releasing fast code - The DevOps approach
Releasing fast code - The DevOps approachReleasing fast code - The DevOps approach
Releasing fast code - The DevOps approach
Michael Kopp
 
Application Testing Suite
Application Testing SuiteApplication Testing Suite
Application Testing Suite
oracleonthebrain
 
SVCC 2011 - 0 - 60: QA Automation @ Box
SVCC 2011 - 0 - 60: QA Automation @ BoxSVCC 2011 - 0 - 60: QA Automation @ Box
SVCC 2011 - 0 - 60: QA Automation @ Box
Peter White
 
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptxDSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
Mikalai Alimenkou
 
Презентация
ПрезентацияПрезентация
Презентацияguest22d71d
 
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестамDSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
SQALab
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
hemasubbu08
 
Agile testing
Agile testingAgile testing
Agile testing
Raj Indugula
 
Faster apps. faster time to market. faster mean time to repair
Faster apps. faster time to market. faster mean time to repairFaster apps. faster time to market. faster mean time to repair
Faster apps. faster time to market. faster mean time to repair
Compuware ASEAN
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
Wee Witthawaskul
 
Real-world Entity Framework
Real-world Entity FrameworkReal-world Entity Framework
Real-world Entity Framework
Lynn Langit
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing Services
Neev Technologies
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
Twice. Ontwikkelaars van IT professionals
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
Delta-N
 
Kku2011
Kku2011Kku2011
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Sergey Aganezov
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
Declan Whelan
 

Similar to Implementing Test Automation in Agile Projects (20)

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
 
Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBay
 
Releasing fast code - The DevOps approach
Releasing fast code - The DevOps approachReleasing fast code - The DevOps approach
Releasing fast code - The DevOps approach
 
Application Testing Suite
Application Testing SuiteApplication Testing Suite
Application Testing Suite
 
SVCC 2011 - 0 - 60: QA Automation @ Box
SVCC 2011 - 0 - 60: QA Automation @ BoxSVCC 2011 - 0 - 60: QA Automation @ Box
SVCC 2011 - 0 - 60: QA Automation @ Box
 
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptxDSL, Page Object and WebDriver – the path to reliable functional tests.pptx
DSL, Page Object and WebDriver – the path to reliable functional tests.pptx
 
Презентация
ПрезентацияПрезентация
Презентация
 
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестамDSL, Page Object и WebDriver – путь к надежным функциональным тестам
DSL, Page Object и WebDriver – путь к надежным функциональным тестам
 
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-54&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
4&5.pptx SOFTWARE TESTING UNIT-4 AND UNIT-5
 
Agile testing
Agile testingAgile testing
Agile testing
 
Faster apps. faster time to market. faster mean time to repair
Faster apps. faster time to market. faster mean time to repairFaster apps. faster time to market. faster mean time to repair
Faster apps. faster time to market. faster mean time to repair
 
Agile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer PerspectiveAgile Software Development in Practice - A Developer Perspective
Agile Software Development in Practice - A Developer Perspective
 
Real-world Entity Framework
Real-world Entity FrameworkReal-world Entity Framework
Real-world Entity Framework
 
Neev Independent Testing Services
Neev Independent Testing ServicesNeev Independent Testing Services
Neev Independent Testing Services
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012Introductie Visual Studio ALM 2012
Introductie Visual Studio ALM 2012
 
Kku2011
Kku2011Kku2011
Kku2011
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 

More from Michael Palotas

Berlin Selenium Meetup - Galen Framework
Berlin Selenium Meetup -  Galen FrameworkBerlin Selenium Meetup -  Galen Framework
Berlin Selenium Meetup - Galen Framework
Michael Palotas
 
Selenium - The page object pattern
Selenium - The page object patternSelenium - The page object pattern
Selenium - The page object pattern
Michael 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 Selenium
Michael 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 umbrella
Michael 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. Toolset
Michael 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 infrastructure
Michael Palotas
 
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery WorkshopAgile Bodensee - Testautomation & Continuous Delivery Workshop
Agile Bodensee - Testautomation & Continuous Delivery Workshop
Michael 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 SCENES
Michael Palotas
 
JAVA User Group Bern - Selenium
JAVA User Group Bern  - SeleniumJAVA User Group Bern  - Selenium
JAVA User Group Bern - Selenium
Michael Palotas
 
Mobile Testing and Mobile Automation at eBay
Mobile Testing and Mobile Automation at eBayMobile Testing and Mobile Automation at eBay
Mobile Testing and Mobile Automation at eBayMichael 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
 

More from Michael Palotas (18)

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
 
Mobile Testing and Mobile Automation at eBay
Mobile Testing and Mobile Automation at eBayMobile Testing and Mobile Automation at eBay
Mobile Testing and Mobile Automation at eBay
 
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
 

Recently uploaded

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
UiPathCommunity
 

Recently uploaded (20)

Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 

Implementing Test Automation in Agile Projects

  • 1. Implementing Test Automation in Agile Projects Michael Palotas & Dominik Dary Quality Engineering Europe eBay International April 2012
  • 2. eBay Inc. Facts Founded in 1995 Based in San Jose, California 27770 Employees worldwide
  • 3. Platform Facts 104 million active buyers and sellers worldwide 68 Billion USD transaction volume 2011 2000 USD transaction volume every second
  • 4. Data Facts 9 petabytes of data In our Hadoop and Teradata clusters 2 billion page views each day 75 billion database calls each day
  • 5. Mobile Facts 70,000,000 downloads of the eBay Inc. mobile apps 5 billion USD transacted 2011 on mobile devices 1 million items are listed with using mobile apps every week
  • 6. 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
  • 7. Test Automation? To get early and instant Feedback We automate the regression tests It is our safety net to save time & this is reinvested into manual testing
  • 8. Flip the testing triangle Manual Tests Manual Tests E2E Tests E2E Automation Tests Integration Tests Unit Tests Unit Tests Inspiration: http://patrickwilsonwelsh.com/?p=32
  • 9. Our guide through this Presentation 4. Lean Test Automation 3. Test Implementation 2. Modeling of the Biz Domain Layer 1. Design the Automated Test with Test Aspects
  • 10. 1. Design the Automated Tests with Test Aspects Use Test Aspects** Advantages • Test aspects briefly describe • Clear overview for all team “why” and “what” has to be members about test coverage tested, without describing • Simplicity helps you to do “how” quick reviews and • Enables for early testing walkthroughs with your product because tests can be written at owner the same time the user story is • Enables you to identify manual created and automated test duplicates • Test aspects are structurally • Traceability between test derived cases and specification **Swiss Testing Day Presentation 2010: “Mit Testaspekten früh, intelligent und redundanzfrei testen” Melanie Späth Image Source: http://www.masternewmedia.org/images/social_software_impact_individual_organizations.jpg
  • 12. 2. Modeling of the Biz Domain Layer Tests • Modularization and reuse of components: Flow Objects maintainable & Biz Domain extendable e2e tests Layer Page Objects • Crucial to have in Biz Domain Layer depth knowledge of WebDriver the domain Browser • Enable data driven testing by generic test cases
  • 13. Pages and Flows e-Commerce shopping site like eBay Select View Order Review Payment Category Summary Provider Search View View Update Item Category Orderlist View Delete Product View Item Shopping Cart Page Page Checkout Page Success Page
  • 14. 3. Test Implementation using Selenium Tests Flow Objects Objects Page
  • 16. Instant Feedback - Selenium Grid Sequential Execution Parallel Execution Test Test Test Test Parallel Execution Parallel Execution Test Test Test Test Test Test Test Test Test Test Test Test Test 1 2 3 … 4500 Execution Time Execution Time Execution time: Execution time: 7000 minutes (~116 hours = ~5 days) 60 minutes by using 150 Virtual Machines / Browsers using the WebDriver GRID Footnote about the size of the Tests @eBay Europe: - 4500 end-to-end regression test cases - 2-3 minutes execution time for each
  • 17. 4. Lean Test Automation Technical Debt Lean Test Automation • Activities that result in • Eliminate Waste Definition of Done technical debt include • Build Quality In Reviews • Postponing documentation and • Create Knowledge Document the essentials writing tests • Defer Commitment Don’t build a framework • attending to TODO • Deliver Fast comments and • tackling compiler and • Respect People Long Leash static code analysis • Optimize the Whole warnings • Knowledge that isn't shared around the organization • Code that is too confusing to be modified easily
  • 18. Conclusion Be clear why you want to automate Open source is your best friend Flip the testing triangle Treat automation as a software project Work with the right people Stay lean Test automation is much more than just your automation toolset!

Editor's Notes

  1. Call out shapes can be found on pg. 56 and 57Arrows can be found on pg. 59
  2. Instant Feedback is the key enabler for AGILE TESTING.Automated tests are early feedback for the whole teamQuickly detect destabilizing changes in new buildsMinimize the execution time of your test suite (max 1hour) Expose regression bugs as quickly as possibleFindings bugs early is saving money
  3. Image size: 9” (width) x 5.17” (height)Right click and select “Change picture” to replace image