SlideShare uma empresa Scribd logo
1 de 20
Test Automation
10 (sometimes painful) lessons learned



Michael Palotas & Dominik Dary
Quality Engineering Europe
eBay International


March 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 times
   eBay Inc’s apps have been downloaded

   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
Lesson 1: 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
Lesson 2: Everyone needs to know what is
automated

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
Lesson 3: A Tool is not a Strategy

    A test tool/testing framework won't
    teach your testers how to test

    A clear testing process is mandatory
    for test automation

    Test Aspects and modeling of the
    Biz-Domain layer is the key success
    factor for your test strategy
Lesson 4: Write the right tests




                           Source: http://farm1.static.flickr.com/119/269335955_03a0ff4b67_o.jpg
Lesson 4: Write the right tests

    Automate the business critical use
    cases of your customer

    Focus on end-to-end testing rather
    than UI component tests

    Design testability into your
    product
Lesson 5: Instant Feedback is essential

           Development                     Test




 D   T D   T D   T D     T D   T D   T D     T D   T
Lesson 6: Automation is software development


Skillset & Knowledge                 Engineering practice
•  You need people with software     •  Task oriented development
   development skills and an            helps you to get things done
   appetite for testing              •  Follow the basic rules like lean
•  Automation mindset is essential      development principles
•  Good understanding of the         •  Design the test before coding it
   architecture of the application   •  Do code reviews
   under test is required            •  Your developers can give you
                                        very good feedback about your
                                        code quality
Lesson 7: Maintainability is king




Source: http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef01348602ac19970c-pi
Lesson 7: Maintainability is king

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
       •    Ignoring 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
Lesson 8: Speak the same language as the
developers

     Use the same programming
     language as development

     Developers can write or maintain
     tests if needed

     Enables for a cross functional team
     where everyone can work on nearly
     every task
Lesson 9: Invest into the test infrastructure

     Speed up and simplify
     the creation of test
     data

     Offer and use web
     services

     Web based test data
     creation tools can be
     used in test auto-
     mation and manual
     testing
Lesson 10: Manual testing is still very important



    Automated tests only do what you have implemented:
    at the same speed, same order, with exactly the same
    mouse clicks
    Manual testing allows you to go off the beaten path

    Test automation in combination with exploratory
    testing combine the best of both worlds

    Quality = Manual + Automated Testing
Conclusion of our ten lessons learned

1.  Flip the testing triangle   6.  Automation is software
2.  A tool is not a strategy        development itself
3.  Everyone knows              7.  Maintainability is king
    what’s automated            8.  Speak the same
4.  Write the right tests           language as the
5.  Instant Feedback is             developers
    essential                   9.  Invest into the test
                                    Infrastructure
                                10. Manual testing is still
                                    very important
Thank You!
Questions or Comments?

Mais conteúdo relacionado

Mais procurados

Synthesizing Continuous Deployment Practices in Software Development
Synthesizing Continuous Deployment Practices in Software DevelopmentSynthesizing Continuous Deployment Practices in Software Development
Synthesizing Continuous Deployment Practices in Software Development
Akond Rahman
 
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
Felipe Lima
 
Acceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDDAcceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDD
Laurent PY
 
Alexandru Bolboaca - Unit Testing from the Trenches
Alexandru Bolboaca - Unit Testing from the TrenchesAlexandru Bolboaca - Unit Testing from the Trenches
Alexandru Bolboaca - Unit Testing from the Trenches
Mozaic Works
 
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
Anna Russo
 
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
Anna Russo
 
Test driven development
Test driven developmentTest driven development
Test driven development
Harry Potter
 

Mais procurados (17)

Synthesizing Continuous Deployment Practices in Software Development
Synthesizing Continuous Deployment Practices in Software DevelopmentSynthesizing Continuous Deployment Practices in Software Development
Synthesizing Continuous Deployment Practices in Software Development
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
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
 
A Brief Introduction to Test-Driven Development
A Brief Introduction to Test-Driven DevelopmentA Brief Introduction to Test-Driven Development
A Brief Introduction to Test-Driven Development
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Development without Testers: Myth or Real Option? (ConfeT&QA conference)
Development without Testers: Myth or Real Option? (ConfeT&QA conference)Development without Testers: Myth or Real Option? (ConfeT&QA conference)
Development without Testers: Myth or Real Option? (ConfeT&QA conference)
 
Topic production code
Topic production codeTopic production code
Topic production code
 
Acceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDDAcceptance Testing Driven Development, TDD
Acceptance Testing Driven Development, TDD
 
How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance Toolbelt
 
Alexandru Bolboaca - Unit Testing from the Trenches
Alexandru Bolboaca - Unit Testing from the TrenchesAlexandru Bolboaca - Unit Testing from the Trenches
Alexandru Bolboaca - Unit Testing from the Trenches
 
Introduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and ToolsIntroduction to Test Automation - Technology and Tools
Introduction to Test Automation - Technology and Tools
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Development without Testers: Myth or Real Option?
Development without Testers: Myth or Real Option?Development without Testers: Myth or Real Option?
Development without Testers: Myth or Real Option?
 
Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.Unit testing & TDD concepts with best practice guidelines.
Unit testing & TDD concepts with best practice guidelines.
 
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STARWEST 2010 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
 
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
STAREAST 2011 - 7 Steps To Improving Software Quality using Microsoft Test Ma...
 
Test driven development
Test driven developmentTest driven development
Test driven development
 

Semelhante a Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned

Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBay
Dominik Dary
 
Yamuna Chari(Experience -3years(Automation & Manual))
Yamuna Chari(Experience -3years(Automation & Manual))Yamuna Chari(Experience -3years(Automation & Manual))
Yamuna Chari(Experience -3years(Automation & Manual))
Yamuna Chari
 
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Unit testing, UI testing and Test Driven Development in Visual Studio 2012Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Jacinto Limjap
 
Shahnawaz Md Test Engineer
Shahnawaz Md Test EngineerShahnawaz Md Test Engineer
Shahnawaz Md Test Engineer
Shahnawaz Md
 
Feb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition DevelopmentFeb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition Development
Barb Tillich
 

Semelhante a Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned (20)

Agile Testing at eBay
Agile Testing at eBayAgile Testing at eBay
Agile Testing at eBay
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
Tools for Software Testing
Tools for Software TestingTools for Software Testing
Tools for Software Testing
 
Agile Testing - What is it?
Agile Testing - What is it?Agile Testing - What is it?
Agile Testing - What is it?
 
Agile Testing
Agile Testing  Agile Testing
Agile Testing
 
Agile testing
Agile testingAgile testing
Agile testing
 
5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation5 Steps to Jump Start Your Test Automation
5 Steps to Jump Start Your Test Automation
 
The four generations of test automation
The four generations of test automationThe four generations of test automation
The four generations of test automation
 
Methodology: IT test
Methodology: IT testMethodology: IT test
Methodology: IT test
 
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
 
Kku2011
Kku2011Kku2011
Kku2011
 
Yamuna chari(experience 3years(automation & manual))
Yamuna chari(experience  3years(automation & manual))Yamuna chari(experience  3years(automation & manual))
Yamuna chari(experience 3years(automation & manual))
 
Yamuna Chari(Experience -3years(Automation & Manual))
Yamuna Chari(Experience -3years(Automation & Manual))Yamuna Chari(Experience -3years(Automation & Manual))
Yamuna Chari(Experience -3years(Automation & Manual))
 
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Unit testing, UI testing and Test Driven Development in Visual Studio 2012Unit testing, UI testing and Test Driven Development in Visual Studio 2012
Unit testing, UI testing and Test Driven Development in Visual Studio 2012
 
Agile Testing 20021015
Agile Testing 20021015Agile Testing 20021015
Agile Testing 20021015
 
How to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOpsHow to Embed Codeless Test Automation Into DevOps
How to Embed Codeless Test Automation Into DevOps
 
Solving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous TestingSolving the 3 Biggest Questions in Continuous Testing
Solving the 3 Biggest Questions in Continuous Testing
 
Shahnawaz Md Test Engineer
Shahnawaz Md Test EngineerShahnawaz Md Test Engineer
Shahnawaz Md Test Engineer
 
DevTestOps
DevTestOpsDevTestOps
DevTestOps
 
Feb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition DevelopmentFeb 2013Lesson 38 Software Acquisition Development
Feb 2013Lesson 38 Software Acquisition Development
 

Mais de 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 detection
Michael 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 detection
Michael 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-driver
Michael Palotas
 
Mobile WebDriver Selendroid
Mobile WebDriver SelendroidMobile WebDriver Selendroid
Mobile WebDriver Selendroid
Michael Palotas
 
Scrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindsetScrum breakfast skillset_toolset_mindset
Scrum breakfast skillset_toolset_mindset
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 eBay
Michael Palotas
 
ebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut Potsdamebay @ Hasso Plattner Institut Potsdam
ebay @ Hasso Plattner Institut Potsdam
Michael Palotas
 
How we Test at eBay Europe
How we Test at eBay EuropeHow we Test at eBay Europe
How we Test at eBay Europe
Michael Palotas
 

Mais de Michael Palotas (19)

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
 
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

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Swiss Testing Day - Testautomation, 10 (sometimes painful) lessons learned

  • 1. Test Automation 10 (sometimes painful) lessons learned Michael Palotas & Dominik Dary Quality Engineering Europe eBay International March 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 times eBay Inc’s apps have been downloaded 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. Lesson 1: 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
  • 8. Lesson 2: Everyone needs to know what is automated 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
  • 9. Lesson 3: A Tool is not a Strategy A test tool/testing framework won't teach your testers how to test A clear testing process is mandatory for test automation Test Aspects and modeling of the Biz-Domain layer is the key success factor for your test strategy
  • 10. Lesson 4: Write the right tests Source: http://farm1.static.flickr.com/119/269335955_03a0ff4b67_o.jpg
  • 11. Lesson 4: Write the right tests Automate the business critical use cases of your customer Focus on end-to-end testing rather than UI component tests Design testability into your product
  • 12. Lesson 5: Instant Feedback is essential Development Test D T D T D T D T D T D T D T D T
  • 13. Lesson 6: Automation is software development Skillset & Knowledge Engineering practice •  You need people with software •  Task oriented development development skills and an helps you to get things done appetite for testing •  Follow the basic rules like lean •  Automation mindset is essential development principles •  Good understanding of the •  Design the test before coding it architecture of the application •  Do code reviews under test is required •  Your developers can give you very good feedback about your code quality
  • 14. Lesson 7: Maintainability is king Source: http://geekandpoke.typepad.com/.a/6a00d8341d3df553ef01348602ac19970c-pi
  • 15. Lesson 7: Maintainability is king 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 •  Ignoring 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
  • 16. Lesson 8: Speak the same language as the developers Use the same programming language as development Developers can write or maintain tests if needed Enables for a cross functional team where everyone can work on nearly every task
  • 17. Lesson 9: Invest into the test infrastructure Speed up and simplify the creation of test data Offer and use web services Web based test data creation tools can be used in test auto- mation and manual testing
  • 18. Lesson 10: Manual testing is still very important Automated tests only do what you have implemented: at the same speed, same order, with exactly the same mouse clicks Manual testing allows you to go off the beaten path Test automation in combination with exploratory testing combine the best of both worlds Quality = Manual + Automated Testing
  • 19. Conclusion of our ten lessons learned 1.  Flip the testing triangle 6.  Automation is software 2.  A tool is not a strategy development itself 3.  Everyone knows 7.  Maintainability is king what’s automated 8.  Speak the same 4.  Write the right tests language as the 5.  Instant Feedback is developers essential 9.  Invest into the test Infrastructure 10. Manual testing is still very important